Multi-Market Swing Trader Webhook Ready [HullBuster]
Introduction
This is an all symbol swing trading strategy intended for webhook integration to live accounts. This script employs an adjustable bandwidth ping pong algorithm which can be run in long only, short only or bidirectional modes. Additionally, this script provides advanced features such as pyramiding and DCA. It has been in development for nearly three years and exposes over 90 inputs to accommodate varying risk reward ratios. Equipped with a proper configuration it is suitable for professional traders seeking quality trades from a cloud based platform. This is my most advanced Pine Script to date which combines my RangeV3 and TrendV2 scripts. Using this combination it tries to bridge the gap between range bound and trending markets. I have put a lot of time into creating a system that could transition by itself so as to require less human intervention and thus be able to withstand long periods in full automation mode.
As a Pine strategy, hypothetical performance can be easily back-tested. Allowing you to Iron out the configuration of your target instrument. Now with recent advancements from the Pine development team this same script can be connected to a webhook through the alert mechanism. The requirement of a separate study script has been completely removed. This really makes things a lot easier to get your trading system up and running. I would like to also mention that TradingView has made significant advancements to the back-end over the last year. Notably, compile times are much faster now permitting more complex algorithms to be implemented. Thank you TradingView!
I used QuantConnect as my role model and strived to produce a base script which could compete with higher end cloud based platforms while being attractive to similarly experienced traders. The versatility of the Pine Language combined with the greater selection of end point execution systems provides a powerful alternative to other cloud based platforms. At the very least, with the features available today, a modular trading system for everyday use is a reality. I hope you'll agree.
This is a swing trading strategy so the behavior of this script is to buy on weakness and sell on strength. In trading parlance this is referred to as Support and Resistance Trading. Support being the point at which prices stop falling and start rising. Resistance being the point at which prices stop rising and fall. The chart real estate between these two points being defined as the range. This script seeks to implement strategies to profit from placing trades within this region. Short positions at resistance and long positions at support. Just to be clear, the range as well as trends are merely illusions as the chart only receives prices. However, this script attempts to calculate pivot points from the price stream. Rising pivots are shorts and falling pivots are longs. I refer to pivots as a vertex in this script which adds structural components to the chart formation (point, sides and a base). When trading in “Ping Pong” mode long and short positions are interleaved continuously as long as there exists a detectable vertex.
This is a non-hedging script so those of us subject to NFA FIFO Rule 2-43(b) should be generally safe to webhook into signals emitted from this script. However, as covered later in this document, there are some technical limitations to this statement. I have tested this script on various instruments for over two years and have configurations for forex, crypto and stocks. This script along with my TrendV2 script are my daily trading vehicles as a webhook into my forex and crypto accounts. This script employs various high risk features that could wipe out your account if not used judiciously. You should absolutely not use this script if you are a beginner or looking for a get-rich-quick strategy. Also please see my CFTC RULE 4.41 disclosure statement at the end of the document. Really!
Does this script repaint? The short answer is yes, it does, despite my best efforts to the contrary. EMAs are central to my strategy and TradingView calculates from the beginning of the series so there is just no getting around this. However, Pine is improving everyday and I am hopeful that this issue will be address from an architectural level at some point in the future. I have programmed my webhook to compensate for this occurrence so, in the mean time, this my recommended way to handle it (at the endpoint and before the broker).
Design
This strategy uses a ping pong algorithm of my own design. Basically, trades bounce off each other along the price stream. Trades are produced as a series of reversals. The point at which a trade reverses is a pivot calculation. A measurement is made between the recent valley to peak which results in a standard deviation value. This value is an input to implied probability calculation.Yes, the same implied probability used in sports betting. Odds are then calculated to determine the likelihood of price action continuing or retracing to the pivot. Based on where the account is at alert time, the action could be an entry, take profit or pyramid signal. In this design, trades must occur in alternating sequence. A long followed by a short then another long followed by a short and so on. In range bound price action trades appear along the outer bands of the channel in the aforementioned sequence. Shorts on the top and longs at the bottom. Generally speaking, the widths of the trading bands can be adjusted using the vertex dynamics in Section 2. There are a dozen inputs in this section used to describe the trading range. It is not a simple adjustment. If pyramids are enabled the strategy overrides the ping pong reversal pattern and begins an accumulation sequence. In this case you will see a series of same direction trades.
This script uses twelve indicators on a single time frame. The original trading algorithms are a port from a C++ program on proprietary trading platform. I’ve converted some of the statistical functions to use standard indicators available on TradingView. The setups make heavy use of the Hull Moving Average in conjunction with EMAs that form the Bill Williams Alligator as described in his book “New Trading Dimensions” Chapter 3. Lag between the Hull and the EMAs play a key role in identifying the pivot points. I really like the Hull Moving Average. I use it in all my systems, including 3 other platforms. It’s is an excellent leading indicator and a relatively light calculation.
The trend detection algorithms rely on several factors:
1. Smoothed EMAs in a Willams Alligator pattern.
2. Number of pivots encountered in a particular direction.
3. Which side debt is being incurred.
4. Settings in Section 4 and 5 (long and short)
The strategy uses these factors to determine the probability of prices continuing in the most recent direction. My TrendV2 script uses a higher time frame to determine trend direction. I can’t use that method in this script without exceeding various TradingView limitations on code size. However, the higher time frame is the best way to know which trend is worth pursuing or better to bet against.
The entire script is around 2400 lines of Pine code which pushes the limits of what can be created on this platform given the TradingView maximums for: local scopes, run-time duration and compile time. The module has been through numerous refactoring passes and makes extensive use of ternary statements. As such, It takes a full minute to compile after adding it to a chart. Please wait for the hovering dots to disappear before attempting to bring up the input dialog box. Scrolling the chart quickly may bring up an hour glass.
Regardless of the market conditions: range or trend. The behavior of the script is governed entirely by the 91 inputs. Depending on the settings, bar interval and symbol, you can configure a system to trade in small ranges producing a thousand or more trades. If you prefer wider ranges with fewer trades then the vertex detection settings in Section 2 should employ stiffer values. To make the script more of a trend follower, adjustments are available in Section 4 and 5 (long and short respectively). Overall this script is a range trader and the setups want to get in that way. It cannot be made into a full blown trend trading system. My TrendV2 is equipped for that purpose. Conversely, this script cannot be effectively deployed as a scalper either. The vertex calculation require too much data for high frequency trading. That doesn’t work well for retail customers anyway. The script is designed to function in bar intervals between 5 minutes and 4 hours. However, larger intervals require more backtest data in order to create reliable configurations. TradingView paid plans (Pro) only provide 10K bars which may not be sufficient. Please keep that in mind.
The transition from swing trader to trend follower typically happens after a stop is hit. That means that your account experiences a loss first and usually with a pyramid stack so the loss could be significant. Even then the script continues to alternate trades long and short. The difference is that the strategy tries to be more long on rising prices and more short on falling prices as opposed to simply counter trend trading. Otherwise, a continuous period of rising prices results in a distinctly short pyramid stack. This is much different than my TrendV2 script which stays long on peaks and short on valleys. Basically, the plan is to be profitable in range bound markets and just lose less when a trend comes along. How well this actually plays out will depend largely on the choices made in the sectioned input parameters.
Sections
The input dialog for this script contains 91 inputs separated into six sections.
Section 1: Global settings for the strategy including calculation model, trading direction, exit levels, pyramid and DCA settings. This is where you specify your minimum profit and stop levels. You should setup your Properties tab inputs before working on any of the sections. It’s really important to get the Base Currency right before doing any work on the strategy inputs. It is important to understand that the “Minimum Profit” and “Limit Offset” are conditional exits. To exit at a profit, the specified value must be exceeded during positive price pressure. On the other hand, the “Stop Offset” is a hard limit.
Section 2: Vertex dynamics. The script is equipped with four types of pivot point indicators. Histogram, candle, fractal and transform. Despite how the chart visuals may seem. The chart only receives prices. It’s up to the strategy to interpret patterns from the number stream. The quality of the feed and the symbol’s bar characteristics vary greatly from instrument to instrument. Each indicator uses a fundamentally different pattern recognition algorithm. Use trial and error to determine the best fit for your configuration. After selecting an indicator type, there are eight analog fields that must be configured for that particular indicator. This is the hardest part of the configuration process. The values applied to these fields determine how the range will be measured. They have a big effect on the number of trades your system will generate. To see the vertices click on the “Show Markers” check box in this section. Red markers are long positions and blue markers are short. This will give you an idea of where trades will be placed in natural order.
Section 3: Event thresholds. Price spikes are used to enter and exit trades. The magnitude which define these spikes are configured here. The rise and fall events are primarily for pyramid placement. The rise and fall limits determine the exit threshold for the conditional “Limit Offset” field found in Section 1. These fields should be adjusted one at a time. Use a zero value to disengage every one but the one you are working on. Use the fill colors found in Section 6 to get a visual on the values applied to these fields. To make it harder for pyramids to enter stiffen the Event values. This is more of a hack as the formal pyramid parameters are in Section 1.
Section 4 and 5: Long and short settings. These are mirror opposite settings with all opposing fields having the same meaning. Its really easy to introduce data mining bias into your configuration through these fields. You must combat against this tendency by trying to keep your settings as uniform as possible. Wildly different parameters for long and short means you have probably fitted the chart. There are nine analog and thirteen Boolean fields per trade direction. This section is all about how the trades themselves will be placed along the range defined in Section 2. Generally speaking, more restrictive settings will result in less trades but higher quality. Remember that this strategy will enter long on falling prices and short on rising prices. So getting in the trade too early leads to a draw-down. However, this could be what you want if pyramiding is enabled. I, personally, have found that the best configurations come from slightly skewing one side. I just accept that the other side will be sub-par.
Section 6: Chart rendering. This section contains one analog and four Boolean fields. More or less a diagnostic tool. Of particular interest is the “Symbol Debt Sequence” field. This field contains a whole number which paints regions that have sustained a run of bad trades equal or greater than specified value. It is useful when DCA is enabled. In this script Dollar Cost Averaging on new positions continues only until the symbol debt is recouped. To get a better understanding on how this works put a number in this field and activate DCA. You should notice how the trade size increases in the colored regions. The “Summary Report” checkbox displays a blue information box at the live end of the chart. It exposes several metrics which you may find useful if manually trading this strategy from audible alerts or text messages.
Pyramids
This script features a downward pyramiding strategy which increases your position size on losing trades. On purely margin trades, this feature can be used to, hypothetically, increase the profit factor of positions (not individual trades). On long only markets, such as crypto, you can use this feature to accumulate coins at depressed prices. The way it works is the stop offset, applied in the Section 1 inputs, determines the maximum risk you intend to bear. Additional trades will be placed at pivot points calculated all the way down to the stop price. The size of each add on trade is increased by a multiple of its interval. The maximum number of intervals is limited by the “Pyramiding” field in the properties tab. The rate at which pyramid positions are created can be adjusted in Section 1. To see the pyramids click on the “Mark Pyramid Levels” check box in the same section. Blue triangles are painted below trades other than the primary.
Unlike traditional Martingale strategies, the result of your trade is not dependent on the profit or loss from the last trade. The position must recover the R1 point in order to close. Alternatively, you can set a “Pyramid Bale Out Offset” in Section 1 which will terminate the trade early. However, the bale out must coincide with a pivot point and result in a profitable exit in order to actually close the trade. Should the market price exceed the stop offset set in Section 1, the full value of the position, multiplied by the accepted leverage, will be realized as a loss to the trading account. A series of such losses will certainly wipe out your account.
Pyramiding is an advanced feature intended for professional traders with well funded accounts and an appropriate mindset. The availability of this feature is not intended to endorse or promote my use of it. Use at your own risk (peril).
DCA
In addition to pyramiding this script employs DCA which enables users to experiment with loss recovery techniques. This is another advanced feature which can increase the order size on new trades in response to stopped out or winning streak trades. The script keeps track of debt incurred from losing trades. When the debt is recovered the order size returns to the base amount specified in the properties tab. The inputs for this feature are found in section 3 and include a limiter to prevent your account from depleting capital during runaway markets. The main difference between DCA and pyramids is that this implementation of DCA applies to new trades while pyramids affect open positions. DCA is a popular feature in crypto trading but can leave you with large “bags” if your not careful. In other markets, especially margin trading, you’ll need a well funded account and much experience.
To be sure pyramiding and dollar cost averaging is as close to gambling as you can get in respectable trading exchanges. However, if you are looking to compete in a spot trading contest or just want to add excitement to your trading life style those features could find a place in your strategies. Although your backtest may show spectacular gains don’t expect your live trading account to do the same. Every backtest has some measure of data mining bias. Please remember that.
Webhook Integration
The TradingView alerts dialog provides a way to connect your script to an external system which could actually execute your trade. This is a fantastic feature that enables you to separate the data feed and technical analysis from the execution and reporting systems. Using this feature it is possible to create a fully automated trading system entirely on the cloud. Of course, there is some work to get it all going in a reliable fashion. To that end this script has several things going for it. First off, it is a strategy type script. That means that the strategy place holders such as {{strategy.position_size}} can be embedded in the alert message text. There are more than 10 variables which can write internal script values into the message for delivery to the specified endpoint. Additionally, my scripts output the current win streak and debt loss counts in the {{strategy.order.alert_message}} field. Depending on the condition, this script will output other useful values in the JSON “comment” field of the alert message. Here is an excerpt of the fields I use in my webhook signal:
"broker_id": "kraken",
"account_id": "XXX XXXX XXXX XXXX",
"symbol_id": "XMRUSD",
"action": "{{strategy.order.action}}",
"strategy": "{{strategy.order.id}}",
"lots": "{{strategy.order.contracts}}",
"price": "{{strategy.order.price}}",
"comment": "{{strategy.order.alert_message}}",
"timestamp": "{{time}}"
Though TradingView does a great job in dispatching your alert this feature does come with a few idiosyncrasies. Namely, a single transaction call in your script may cause multiple transmissions to the endpoint. If you are using placeholders each message describes part of the transaction sequence. A good example is closing a pyramid stack. Although the script makes a single strategy.close() call, the endpoint actually receives a close message for each pyramid trade. The broker, on the other hand, only requires a single close. The incongruity of this situation is exacerbated by the possibility of messages being received out of sequence. Depending on the type of order designated in the message, a close or a reversal. This could have a disastrous effect on your live account. This broker simulator has no idea what is actually going on at your real account. Its just doing the job of running the simulation and sending out the computed results. If your TradingView simulation falls out of alignment with the actual trading account lots of really bad things could happen. Like your script thinks your are currently long but the account is actually short. Reversals from this point forward will always be wrong with no one the wiser. Human intervention will be required to restore congruence. But how does anyone find out this is occurring? In closed systems engineering this is known as entropy. In practice your webhook logic should be robust enough to detect these conditions. Be generous with the placeholder usage and give the webhook code plenty of information to compare states. Both issuer and receiver. Don’t blindly commit incoming signals without verifying system integrity.
Operation
This is a swing trading strategy so the fundamental behavior of this script is to buy on weakness and sell on strength. As such trade orders are placed in a counter direction to price pressure. What you will see on the chart is a short position on peaks and a long position on valleys. This is slightly misleading since a range as well as a trend are best recognized, in hindsight, after the patterns occur on the chart. In the middle of a trade, one never knows how deep valleys will drop or how high peaks will rise. For certain, long trades will continue to trigger as the market prices fall and short trades on rising prices. This means that the maximum efficiency of this strategy is achieved in choppy markets where the price doesn’t extend very far from its adjacent pivot point. Conversely, this strategy will be the least efficient when market conditions exhibit long continuous single direction price pressure. Especially, when measured in weeks. Translation, the trend is not your friend with this strategy. Internally, the script attempts to recognize prolonged price pressure and changes tactics accordingly. However, at best, the goal is to weather the trend until the range bound market returns. At worst, trend detection fails and pyramid trades continue to be placed until the limit specified in the Properties tab is reached. In all likelihood this could trigger a margin call and if it hits the stop it could wipe out your account.
This script has been in beta test four times since inception. During all that time no one has been successful in creating a configuration from scratch. Most people give up after an hour or so. To be perfectly honest, the configuration process is a bear. I know that but there is no way, currently, to create libraries in Pine. There is also no way specify input parameters other than the flattened out 2-D inputs dialog. And the publish rules clearly state that script variations addressing markets or symbols (suites) are not permitted. I suppose the problem is systemic to be-all-end-all solutions like my script is trying to be. I needed a cloud strategy for all the symbols that I trade and since Pine does not support library modules, include files or inter process communication this script and its unruly inputs are my weapon of choice in the war against the market forces. It takes me about six hours to configure a new symbol. Also not all the symbols I configure are equally successful. I should mention that I have a facsimile of this strategy written in another platform which allows me to run a backtest on 10 years of historical data. The results provide me a sanity check on the inputs I select on this platform.
My personal configurations use a 10 minute bar interval on forex instruments and 15 minutes on crypto. I try to align my TradingView scripts to employ standard intervals available from the broker so that I can backtest longer durations than those available on TradingView. For example, Bitcoin at 15 minute bars is downloadable from several sources. I really like the 10 minute bar. It provides lots of detectable patterns and is easy to store many years in an SQL database.
The following steps provide a very brief set of instructions that will get you started but will most certainly not produce the best backtest. A trading system that you are willing to risk your hard earned capital will require a well crafted configuration that involves time, expertise and clearly defined goals. As previously mentioned, I have several example configurations that I use for my own trading that I can share with you if you like. To get hands on experience in setting up your own symbol from scratch please follow the steps below.
Step 1. Setup the Base currency and order size in the properties tab.
Step 2. Select the calculation presets in the Instrument Type field.
Step 3. Select “No Trade” in the Trading Mode field
Step 4. Select the Histogram indicator from Section 2. You will be experimenting with different ones so it doesn’t matter which one you try first.
Step 5. Turn on Show Markers in Section 2.
Step 6. Go to the chart and checkout where the markers show up. Blue is up and red is down. Long trades show up along the red markers and short trades on the blue.
Step 7. Make adjustments to “Base To Vertex” and “Vertex To Base” net change and ROC in Section 2. Use these fields to move the markers to where you want trades to be.
Step 8. Try a different indicator from Section 2 and repeat Step 7 until you find the best match for this instrument on this interval. This step is complete when the Vertex settings and indicator combination produce the most favorable results.
Step 9. Go to Section 4 and enable “Apply Red Base To Base Margin”.
Step 10. Go to Section 5 and enable “Apply Blue Base To Base Margin”.
Step 11. Go to Section 2 and adjust “Minimum Base To Base Blue” and “Minimum Base To Base Red”. Observe the chart and note where the markers move relative to each other. Markers further apart will produce less trades but will reduce cutoffs in “Ping Pong” mode.
Step 12. Turn off Show Markers in Section 2.
Step 13. Put in your Minimum Profit and Stop Loss in the first section. This is in pips or currency basis points (chart right side scale). Percentage is not currently supported. Note that the profit is taken as a conditional exit on a market order not a fixed limit. The actual profit taken will almost always be greater than the amount specified. The stop loss, on the other hand, is indeed a hard number which is executed by the TradingView broker simulator when the threshold is breached.
Step 14. Return to step 3 and select a Trading Mode (Long, Short, BiDir, Ping Pong). If you are planning to trade bidirectionally its best to configure long first then short. Combine them with “BiDir” or “Ping Pong” after setting up both sides of the trade individually. The difference between “BiDir” and “Ping Pong” is that “Ping Pong” uses position reversal and can cut off opposing trades less than the specified minimum profit. As a result “Ping Pong” mode produces the greatest number of trades.
Step 15. Take a look at the chart. Trades should be showing along the markers plotted earlier.
Step 16. Make adjustments to the Vertex fields in Section 2 until the TradingView performance report is showing a profit. This includes the “Minimum Base To Base” fields. If a profit cannot be achieved move on to Step 17.
Step 17. Improve the backtest profitability by adjusting the “Entry Net Change” and “Entry ROC” in Section 4 and 5.
Step 18. Enable the “Mandatory Snap” checkbox in Section 4 and 5 and adjust the “Snap Candle Delta” and “Snap Fractal Delta” in Section 2. This should reduce some chop producing unprofitable reversals.
Step 19. Increase the distance between opposing trades by adding an “Interleave Delta” in Sections 4 and 5. This is a floating point value which starts at 0.01 and typically does not exceed 2.0.
Step 20. Increase the distance between opposing trades even further by adding a “Decay Minimum Span” in Sections 4 and 5. This is an absolute value specified in the symbol’s quote currency (right side scale of the chart). This value is similar to the minimum profit and stop loss fields in Section 1.
Step 21. The “Buy Composite Strength” input works in tandem with “Long Decay Minimum Span” in Section 4. Try enabling and see if it improves the performance. This field is only relevant when there is a value in “Long Decay Minimum Span”.
Step 22. The “Sell Composite Weakness” input works in tandem with “Short Decay Minimum Span” in Section 5. Try enabling and see if it improves the performance. This field is only relevant when there is a value in “Short Decay Minimum Span”.
Step 23. Improve the backtest profitability by adjusting the “Adherence Delta” in Section 4 and 5. This field requires the “Adhere to Rising Trend” checkbox to be enabled.
Step 24. At this point your strategy should be more or less working. Experiment with the remaining check boxes in Section 4 and 5. Keep the ones which seem to improve the performance.
Step 25. Examine the chart and see that trades are being placed in accordance with your desired trading goals. This is an important step. If your desired model requires multiple trades per day then you should be seeing hundreds of trades on the chart. Alternatively, you may be looking to trade fewer steep peaks and deep valleys in which case you should see trades at major turning points. Don’t simply settle for what the backtest serves you. Work your configuration until the system aligns with your desired model. Try changing indicators and even intervals if you cannot reach your simulation goals. Generally speaking, the histogram and Candle indicators produce the most trades. The Fractal indicator captures the tallest peaks and valleys. The Transform indicator is the most reliable but doesn’t well work on all instruments.
Example Settings
To reproduce the performance shown on the chart please use the following configuration:
1. Select XBTUSD Kraken as the chart symbol.
2. On the properties tab set the Order Size to: 0.01 Bitcoin
3. On the properties tab set the Pyramiding to: 10
4. In Section 1: Select “Forex” for the Instrument Type
5. In Section 1: Select “Ping Pong” for the Trading Mode
6. In Section 1: Input 1200 for the Minimum Profit
7. In Section 1: Input 15000 for the Stop Offset
8. In Section 1: Input 1200 for the Pyramid Minimum Span
9. In Section 1: Check mark the Ultra Wide Pyramids
10. In Section 2: Check mark the Use Transform Indicator
So to be clear, I used a base position size of one - one hundredth of a Bitcoin and allow the script to add up to 10 downward pyramids. The example back-test did hit eight downward pyramids. That means the account would have to be able to withstand a base position size (0.01) times 28. The resulting position size is 0.28 of a Bitcoin. If the price of Bitcoin is 35K then the draw down amount (not including broker fees) would be $9800 dollars. Since I have a premium subscription my backtest chart includes 20K historical bars. That's roughly six months of data. As of today, pro accounts only get 10K bars so the performance cannot be exactly matched with such a difference in historical data. Please keep that in mind.
There are, of course, various ways to reduce the risk incurred from accumulating pyramids. You can increase the “Pyramid Minimum Span” input found in Section 2 which increases the space between each pyramid trade. Also you can set a “Pyramid Bale Out Offset” in the same input section. This lets you out of the trade faster on position recovery. For example: Set a value of 8000 into this input and the number of trades increase to 178 from 157. Since the positions didn’t go full term, more trades were created at less profit each. The total brute force approach would be to simply limit the number of pyramids in the Properties tab.
It should be noted that since this is crypto, accumulating on the long side may be what you want. If you are not trading on margin and thus outright buying coins on the Kraken exchange you likely are interested in increasing your Bitcoin position at depressed prices. This is a popular feature on some of the other crypto trading packages like CryptoHopper and Profit Trailer. Click on Enable TV Long Only Rule in Section 1. This switches the signal emitter to long only. However, you may still see short trades on the chart. They are treated as a close instead of a reversal.
Feel free to PM me with any questions related to this script. Thank you and happy trading!
CFTC RULE 4.41
These results are based on simulated or hypothetical performance results that have certain inherent limitations. Unlike the results shown in an actual performance record, these results do not represent actual trading. Also, because these trades have not actually been executed, these results may have under-or over-compensated for the impact, if any, of certain market factors, such as lack of liquidity. Simulated or hypothetical trading programs in general are also subject to the fact that they are designed with the benefit of hindsight. No representation is being made that any account will or is likely to achieve profits or losses similar to these being shown.
Cerca negli script per "stop loss"
Cyatophilum Swing Trader [BACKTEST]This is an indicator for swing trading which allows you to build your own strategies, backtest and alert. This version is the backtest which allows to use the Strategy Tester. The alert version can be found in my profile scripts page.
The particularity of this indicator is that it contains several indicators, including a custom one, that you can choose in a drop down list, as well as a trailing stop loss and take profit system.
The current indicators are :
CYATO AI: a custom indicator inspired by Donchian Channels that will catch each big trend and important reversal points .
The indicator has two major "bands" or channels and two minor bands. The major bands are bigger and are always displayed.
When price reaches a major band, acting as a support/resistance, it will either bounce on it or break through it. This is how "tops" and "bottoms", and breakouts are caught.
The minor bands are used to catch smaller moves inside the major bands. A combination of volume, momentum and price action is used to calculate the signals.
Advantages of this indicator: it should catch top and bottoms better than other swing trade indicators.
Cons of this indicator: Some minor moves might be ignored. Sometimes the script will catch a fakeout due to the Bands design.
Best timeframes to use it : 2H~4H
Sample:
Other indicators available:
SARMA: A combination of Parabolic Stop and Reverse and Exponential Moving Average (20 and 40) .
SAR: Regular Parabolic Stop and Reverse .
QQE: An indicator based on Quantitative Qualitative Estimation .
SUPERTREND: A reversal indicator based on Average True Range .
CHANNELS: The classic Donchian Channels .
More indicators might be added in the future.
About the signals: each entry (long & short) is calculated at bar close to avoid repainting. Exits (SL & TP) can either be intra-bar or at bar close using the Exit alert type parameter.
STOP LOSS SYSTEM
The base indicators listed above can be used with or without TP/SL.
TP and SL can be both turned on and off and configured for both directions.
The system can be configured with 3 parameters as follows:
Stop Loss Base % Price: Starting Value for LONG/SHORT stop loss
Trailing Stop % Price to Trigger First parameter related to the trailing stop loss. Percentage of price movement in the right direction required to make the stop loss line move.
Trailing Stop % Price Movement: Second parameter related to the trailing stop loss. Percentage for the stop loss trailing movement.
Another option is the "Reverse order on Stop Loss". Use this if you want the strategy to trigger a reverse order when a stop loss is hit.
TAKE PROFIT SYSTEM
The system can be configured with 2 parameters as follows:
Take Profit %: Take profit value in percentage of price.
Trailing Profit Deviation %: Percent deviation for the trailing take profit.
Combining indicators and Take Profit/Stop Loss
One thing to note is that if a reversal signal triggers during a trade, the trade will be closed before SL or TP is reached.
Indeed, the base indicators are reversal indicators, they will trigger long/short signals to follow the trend.
It is possible to use a takeprofit without stop loss, like in this example, knowing that the signal will reverse if the trade goes badly.
The base indicators settings can be changed in the "Advanced Parameters" section.
Configuration used for this snapshot:
BACKTEST SETTINGS
· Initial Capital: 10 000 $
· Order Size: 10% equity (to avoid compounding effect)
· Commission : 0.1% per order (total commission paid: 244.41 €)
· Slippage: 5 ticks
Oldest trade: 2014-04-01
Backtest Period: From 2014-04-01 to 2020-09-04
Use the link below to obtain access to this indicator.
Instant Breakout Strategy with RSI & VWAPInstant Breakout Strategy with RSI & VWAP
This TradingView strategy (Pine Script v6) trades breakouts using pivot points, with optional filters for volume, momentum, RSI, and VWAP. It’s optimized for the 1-second timeframe.
Overview
The strategy identifies breakouts when price crosses above resistance (pivot highs) or below support (pivot lows). It can use basic pivot breakouts or add filters for stronger signals. Take-profit and stop-loss levels are set using ATR, and signals are shown on the chart.
Inputs
Left/Right Pivot Bars: Bars to detect pivots (default: 3). Lower values increase sensitivity.
Volume Surge Multiplier: Volume threshold vs. 20-period average (default: 1.5).
Momentum Threshold: Minimum % price change from bar open (default: 1%).
Take-Profit ATR Multiplier: ATR multiplier for take-profit (default: 9.0).
Stop-Loss ATR Multiplier: ATR multiplier for stop-loss (default: 1.0).
Use Filters: Enable/disable volume, momentum, RSI, and VWAP filters (default: off).
How It Works
1. Pivot Detection
Finds pivot highs (resistance) and lows (support) using ta.pivothigh and ta.pivotlow.
Tracks the latest pivot levels.
2. Volume Surge
Compares current volume to a 20-period volume average.
A surge occurs if volume exceeds the average times the multiplier.
3. Momentum
Measures price change from the bar’s open.
Bullish: Price rises >1% from open.
Bearish: Price falls >1% from open.
4. RSI and VWAP
RSI: 3-period RSI. Above 50 is bullish; below 50 is bearish.
VWAP: Price above VWAP is bullish; below is bearish.
5. ATR
14-period ATR sets take-profit (close ± atr * 9.0) and stop-loss (close ± atr * 1.0).
Trading Rules
Breakout Conditions
Bullish Breakout:
Price crosses above the latest pivot high.
With filters: Volume surge, bullish momentum, RSI > 50, price > VWAP.
Without filters: Only the crossover is needed.
Bearish Breakout:
Price crosses below the latest pivot low.
With filters: Volume surge, bearish momentum, RSI < 50, price < VWAP.
Without filters: Only the crossunder is needed.
Entries and Exits
Long: Enter on bullish breakout. Set take-profit and stop-loss. Close any short position.
Short: Enter on bearish breakout. Set take-profit and stop-loss. Close any long position.
Visuals
Signals: Green triangles (bullish) below bars, red triangles (bearish) above bars.
Pivot Levels: Green line (resistance), red line (support).
Indicators: RSI (blue, separate pane), VWAP (purple, on chart).
How to Use
Apply to a 1-second chart in TradingView for best results.
Adjust inputs (e.g., pivot bars, multipliers). Enable filters for stricter signals.
Watch for buy/sell triangles and monitor RSI/VWAP.
Use ATR-based take-profit/stop-loss for risk management.
Notes
Best on 1-second timeframe due to fast RSI and responsiveness.
Disable filters for more signals (less confirmation).
Backtest before live trading to check performance.
This strategy uses pivots, volume, momentum, RSI, and VWAP for clear breakout trades on the 1-second timeframe.
Parallax Momentum MNQ Strategy# 📈 Parallax Momentum MNQ Strategy
## Overview
The Parallax Momentum MNQ Strategy is a sophisticated support/resistance breakout system specifically designed for Micro Nasdaq futures (MNQ) trading (also works on minis). This strategy combines dynamic level detection with momentum confirmation to identify high-probability entry opportunities while maintaining strict risk management protocols.
## 🎯 Key Features
### Core Strategy Logic
- **Dynamic Support/Resistance Detection**: Automatically identifies key levels using configurable lookback periods
- **Momentum Confirmation**: Volume-based filtering ensures trades align with market momentum
- **ATR-Based Risk Management**: Adaptive stop losses and take profits based on market volatility
- **Dual Entry System**: Both long and short opportunities with limit order execution
### Risk Management
- **ATR-Adaptive Stops**: Stop losses and take profits automatically adjust to market volatility
- **Reward-to-Risk Ratios**: Configurable R:R ratios with default 2:1 minimum
- **Maximum Loss Protection**: Optional daily loss limits to prevent overtrading
- **Session Time Filtering**: Trade only during specified market hours
### Strategy Modes
- **Conservative Mode**: 0.8x risk multiplier for cautious trading
- **Balanced Mode**: Standard 1.0x risk multiplier (default)
- **Aggressive Mode**: 1.2x risk multiplier for active trading
## 📊 Visual Features
### Dashboard Display
- Real-time strategy status and performance metrics
- Current support/resistance levels and ATR values
- Live risk-to-reward ratios for potential trades
- Win rate, profit factor, and drawdown statistics
- Adjustable dashboard size and positioning
### Chart Indicators
- Support and resistance lines with labels
- ATR-based levels (+/-1 ATR and +/-2 ATR)
- Dynamic visual updates as levels change
- Configurable line extensions and styling
## ⚙️ Configuration Options
### Entry Filters
- **Volume Filter**: Optional volume confirmation above SMA
- **Session Time Filter**: 12-hour format time restrictions
- **ATR vs Fixed Stops**: Choose between adaptive or fixed tick-based exits
### Risk Controls
- **ATR Period**: Default 14-period ATR calculation
- **Stop Loss Multiplier**: ATR-based stop distance (default 1.5x)
- **Take Profit Multiplier**: ATR-based target distance (default 1.5x)
- **Secondary Take Profit**: Optional TP2 with position scaling
## 📋 How It Works
### Entry Conditions
**Long Trades**: Triggered when price closes above support buffer but low touches support level, with volume and session confirmation
**Short Trades**: Triggered when price closes below resistance buffer but high touches resistance level, with volume and session confirmation
### Exit Strategy
- **Primary Take Profit**: ATR-based target with 2:1 R:R minimum
- **Stop Loss**: ATR-based protective stop
- **Optional TP2**: Extended target for partial profit taking
- **One Trade at a Time**: No overlapping positions
## 🎛️ Default Settings
- **Lookback Period**: 20 bars for support/resistance detection
- **ATR Period**: 14 bars for volatility calculation
- **Stop Loss**: 1.5x ATR from entry
- **Take Profit**: 1.5x ATR with 2:1 reward-to-risk ratio
- **Session**: 7:30 AM - 2:00 PM (configurable)
## ⚠️ Important Notes
### Risk Disclaimer
- This strategy is for educational and informational purposes only
- Past performance does not guarantee future results
- Always use proper position sizing and risk management
- Test thoroughly on historical data before live trading
- Consider market conditions and volatility when using
### Best Practices
- Backtest on sufficient historical data
- Start with conservative mode for new users
- Monitor performance regularly and adjust parameters as needed
- Use appropriate position sizing for your account
- Consider broker commissions and slippage in live trading
## 🔧 Customization
The strategy offers extensive customization options including:
- Adjustable time sessions with AM/PM format
- Configurable ATR and risk parameters
- Optional maximum daily loss limits
- Dashboard size and position controls
- Visual element toggles and styling
## 📈 Ideal For
- MNQ (Micro Nasdaq) futures traders
- Intraday momentum strategies
- Traders seeking systematic entry/exit rules
- Risk-conscious traders wanting automated stops
- Both beginner and experienced algorithmic traders
---
**Version**: Pine Script v5 Compatible
**Timeframe**: Works on multiple timeframes (test on 1m, 3m, 5m, 15m)
**Market**: Optimized for MNQ but adaptable to other instruments
**Strategy Type**: Trend following with momentum confirmation
Pullback Pro Dow Strategy v7 (ADX Filter)
### **Strategy Description (For TradingView)**
#### **Title:** Pullback Pro: Dow Theory & ADX Strategy
---
#### **1. Summary**
This strategy is designed to identify and trade pullbacks within an established trend, based on the core principles of Dow Theory. It uses market structure (pivot highs and lows) to determine the trend direction and an Exponential Moving Average (EMA) to pinpoint pullback entry opportunities.
To enhance trade quality and avoid ranging markets, an ADX (Average Directional Index) filter is integrated to ensure that entries are only taken when the trend has sufficient momentum.
---
#### **2. Core Logic: How It Works**
The strategy's logic is broken down into three main steps:
**Step 1: Trend Determination (Dow Theory)**
* The primary trend is identified by analyzing recent pivot points.
* An **Uptrend** is confirmed when the script detects a pattern of higher highs and higher lows (HH/HL).
* A **Downtrend** is confirmed by a pattern of lower highs and lower lows (LH/LL).
* If neither pattern is present, the strategy considers the market to be in a range and will not seek trades.
**Step 2: Entry Signal (Pullback to EMA)**
* Once a clear trend is established, the strategy waits for a price correction.
* **Long Entry:** In a confirmed uptrend, a long position is initiated when the price pulls back and crosses *under* the specified EMA.
* **Short Entry:** In a confirmed downtrend, a short position is initiated when the price rallies and crosses *over* the EMA.
**Step 3: Confirmation & Risk Management**
* **ADX Filter:** To ensure the trend is strong enough to trade, an entry signal is only validated if the ADX value is above a user-defined threshold (e.g., 25). This helps filter out weak signals during choppy or consolidating markets.
* **Stop Loss:** The initial Stop Loss is automatically and logically placed at the last market structure point:
* For long trades, it's placed at the `lastPivotLow`.
* For short trades, it's placed at the `lastPivotHigh`.
* **Take Profit:** Two Take Profit levels are calculated based on user-defined Risk-to-Reward (R:R) ratios. The strategy allows for partial profit-taking at the first target (TP1), moving the remainder of the position to the second target (TP2).
---
#### **3. Input Settings Explained**
**① Dow Theory Settings**
* **Pivot Lookback Period:** Determines the sensitivity for detecting pivot highs and lows. A smaller number makes it more sensitive to recent price swings; a larger number focuses on more significant, longer-term pivots.
**② Entry Logic (Pullback)**
* **Pullback EMA Length:** Sets the period for the Exponential Moving Average used to identify pullback entries.
**③ Risk & Exit Management**
* **Take Profit 1 R:R:** Sets the Risk-to-Reward ratio for the first take-profit target.
* **Take Profit 1 (%):** The percentage of the position to be closed when TP1 is hit.
* **Take Profit 2 R:R:** Sets the Risk-to-Reward ratio for the final take-profit target.
**④ Filters**
* **Use ADX Trend Filter:** A master switch to enable or disable the ADX filter.
* **ADX Length:** The lookback period for the ADX calculation.
* **ADX Threshold:** The minimum ADX value required to confirm a trade signal. Trades will only be placed if the ADX is above this level.
---
#### **4. Best Practices & Recommendations**
* This is a trend-following system. It is designed to perform best in markets that exhibit clear, sustained trending behavior.
* It may underperform in choppy, sideways, or strongly ranging markets. The ADX filter is designed to help mitigate this, but no filter is perfect.
* **Crucially, you must backtest this strategy thoroughly** on your preferred financial instrument and timeframe before considering any live application.
* Experiment with the `Pivot Lookback Period`, `Pullback EMA Length`, and `ADX Threshold` to optimize performance for a specific market's characteristics.
---
#### **DISCLAIMER**
This script is provided for educational and informational purposes only. It does not constitute financial advice. All trading involves a high level of risk, and past performance is not indicative of future results. You are solely responsible for your own trading decisions. The author assumes no liability for any financial losses you may incur from using this strategy. Always conduct your own research and due diligence.
Reversal Trading Bot Strategy[BullByte]Overview :
The indicator Reversal Trading Bot Strategy is crafted to capture potential market reversal points by combining momentum, volatility, and trend alignment filters. It uses a blend of technical indicators to identify both bullish and bearish reversal setups, ensuring that multiple market conditions are met before entering a trade.
Core Components :
Technical Indicators Used :
RSI (Relative Strength Index) :
Purpose : Detects divergence conditions by comparing recent lows/highs in price with the RSI.
Parameter : Length of 8.
Bollinger Bands (BB) :
Purpose : Measures volatility and identifies price levels that are statistically extreme.
Parameter : Length of 20 and a 2-standard deviation multiplier.
ADX (Average Directional Index) & DMI (Directional Movement Index) :
Purpose : Quantifies the strength of the trend. The ADX threshold is set at 20, and additional filters check for the alignment of the directional indicators (DI+ and DI–).
ATR (Average True Range) :
Purpose : Provides a volatility measure used to set stop levels and determine risk through trailing stops.
Volume SMA (Simple Moving Average of Volume ):
Purpose : Helps confirm strength by comparing the current volume against a 20-period average, with an optional filter to ensure volume is at least twice the SMA.
User-Defined Toggle Filters :
Volume Filter : Confirms that the volume is above average (or twice the SMA) before taking trades.
ADX Trend Alignment Filter : Checks that the ADX’s directional indicators support the trade direction.
BB Close Confirmation : Optionally refines the entry by requiring price to be beyond the upper or lower Bollinger Band rather than just above or below.
RSI Divergence Exit : Allows the script to close positions if RSI divergence is detected.
BB Mean Reversion Exit : Closes positions if the price reverts to the Bollinger Bands’ middle line.
Risk/Reward Filter : Ensures that the potential reward is at least twice the risk by comparing the distance to the Bollinger Band with the ATR.
Candle Movement Filter : Optional filter to require a minimum percentage move in the candle to confirm momentum.
ADX Trend Exit : Closes positions if the ADX falls below the threshold and the directional indicators reverse.
Entry Conditions :
Bullish Entry :
RSI Divergence : Checks if the current close is lower than a previous low while the RSI is above the previous low, suggesting bullish divergence.
Bollinger Confirmation : Requires that the price is above the lower (or upper if confirmation is toggled) Bollinger Band.
Volume & Trend Filters : Combines volume condition, ADX strength, and an optional candle momentum condition.
Risk/Reward Check : Validates that the trade meets a favorable risk-to-reward ratio.
Bearish Entry :
Uses a mirror logic of the bullish entry by checking for bearish divergence, ensuring the price is below the appropriate Bollinger level, and confirming volume, trend strength, candle pattern, and risk/reward criteria.
Trade Execution and Exit Strateg y:
Trade Execution :
Upon meeting the entry conditions, the strategy initiates a long or short position.
Stop Loss & Trailing Stops :
A stop-loss is dynamically set using the ATR value, and trailing stops are implemented as a percentage of the close price.
Exit Conditions :
Additional exit filters can trigger early closures based on RSI divergence, mean reversion (via the middle Bollinger Band), or a weakening trend as signaled by ADX falling below its threshold.
This multi-layered exit strategy is designed to lock in gains or minimize losses if the market begins to reverse unexpectedly.
How the Strategy Works in Different Market Conditions :
Trending Markets :
The ADX filter ensures that trades are only taken when the trend is strong. When the market is trending, the directional movement indicators help confirm the momentum, making the reversal signal more reliable.
Ranging Markets :
In choppy markets, the Bollinger Bands expand and contract, while the RSI divergence can highlight potential turning points. The optional filters can be adjusted to avoid false signals in low-volume or low-volatility conditions.
Volatility Management :
With ATR-based stop-losses and a risk/reward filter, the strategy adapts to current market volatility, ensuring that risk is managed consistently.
Recommendation on using this Strategy with a Trading Bot :
This strategy is well-suited for high-frequency trading (HFT) due to its ability to quickly identify reversal setups and execute trades dynamically with automated stop-loss and trailing exits. By integrating this script with a TradingView webhook-based bot or an API-driven execution system, traders can automate trade entries and exits in real-time, reducing manual execution delays and capitalizing on fast market movements.
Disclaimer :
This script is provided for educational and informational purposes only. It is not intended as investment advice. Trading involves significant risk, and you should always conduct your own research and analysis before making any trading decisions. The author is not responsible for any losses incurred while using this script.
Sniper Trade Pro (ES 15-Min) - Topstep Optimized🔹 Overview
Sniper Trade Pro is an advanced algorithmic trading strategy designed specifically for E-mini S&P 500 (ES) Futures on the 15-minute timeframe. This strategy is optimized for Topstep 50K evaluations, incorporating strict risk management to comply with their max $1,000 daily loss limit while maintaining a high probability of success.
It uses a multi-confirmation approach, integrating:
✅ Money Flow Divergence (MFD) → To track liquidity imbalances and institutional accumulation/distribution.
✅ Trend Confirmation (EMA + VWAP) → To identify strong trend direction and avoid choppy markets.
✅ ADX Strength Filter → To ensure entries only occur in trending conditions, avoiding weak setups.
✅ Break-Even & Dynamic Stop-Losses → To reduce drawdowns and protect profits dynamically.
This script automatically generates Buy and Sell signals and provides built-in risk management for automated trading execution through TradingView Webhooks.
🔹 How Does This Strategy Work?
📌 1. Trend Confirmation (EMA + VWAP)
The strategy uses:
✔ 9-EMA & 21-EMA: Fast-moving averages to detect short-term momentum.
✔ VWAP (Volume-Weighted Average Price): Ensures trades align with institutional volume flow.
How it works:
Bullish Condition: 9-EMA above 21-EMA AND price above VWAP → Confirms buy trend.
Bearish Condition: 9-EMA below 21-EMA AND price below VWAP → Confirms sell trend.
📌 2. Liquidity & Money Flow Divergence (MFD)
This indicator measures liquidity shifts by tracking momentum changes in price and volume.
✔ MFD Calculation:
Uses Exponential Moving Average (EMA) of Momentum (MOM) to detect changes in buying/selling pressure.
If MFD is above its moving average, it signals liquidity inflows → bullish strength.
If MFD is below its moving average, it signals liquidity outflows → bearish weakness.
Why is this important?
Detects when Smart Money is accumulating or distributing before major moves.
Filters out false breakouts by confirming momentum strength before entry.
📌 3. Trade Entry Triggers (Candlestick Patterns & ADX Filter)
To avoid random entries, the strategy waits for specific candlestick confirmations with ADX trend strength:
✔ Bullish Entry (Buy Signal) → Requires:
Bullish Engulfing Candle (Reversal confirmation)
ADX > 20 (Ensures strong trending conditions)
MFD above its moving average (Liquidity inflows)
9-EMA > 21-EMA & price above VWAP (Trend confirmation)
✔ Bearish Entry (Sell Signal) → Requires:
Bearish Engulfing Candle (Reversal confirmation)
ADX > 20 (Ensures strong trending conditions)
MFD below its moving average (Liquidity outflows)
9-EMA < 21-EMA & price below VWAP (Trend confirmation)
📌 4. Risk Management & Profit Protection
This strategy is built with strict risk management to maintain low drawdowns and maximize profits:
✔ Dynamic Position Sizing → Automatically adjusts trade size to risk a fixed $400 per trade.
✔ Adaptive Stop-Losses → Uses ATR-based stop-loss (0.8x ATR) to adapt to market volatility.
✔ Take-Profit Targets → Fixed at 2x ATR for a Risk:Reward ratio of 2:1.
✔ Break-Even Protection → Moves stop-loss to entry once price moves 1x ATR in profit, locking in gains.
✔ Max Daily Loss Limit (-$1,000) → Stops trading if total losses exceed $1,000, complying with Topstep rules.
IronBot v4IronBot v4 – Trading Strategy Overview
1. Quick Context
IronBot v4 is a trading strategy designed for users who want a simple yet effective approach to reading the markets. It uses a combination of Fibonacci retracement levels, custom logic triggers, and innovative modules (EMA validation, Iron Impulse Shield and Iron Auto Volume Detector) to identify potential entry and exit points, strengthening the strategy’s detection of sudden market volatility or shifts in trading volume.
2. Theoretical Details
Fibonacci Analysis
The script identifies recent market highs and lows, then calculates key Fibonacci levels (high- and low-based). These levels can help confirm potential reversals or trends.
EMA Option
When enabled, the exponential moving average (EMA) offers additional validation for trade entries. If the current price remains above a certain EMA threshold, long positions may be favored; conversely, if it stays below the EMA, short positions may be initiated.
IIS (Iron Impulse Shield)
IIS helps to filter out risky trades by measuring recent price shocks or surges. If an extreme movement is detected, the strategy may temporarily disable longs or shorts to avoid false signals.
IAVD (Iron Auto Volume Detector)
This functionality automatically detects the average market volume over a defined period (regardless of the market, since it relies on real data). When entering a position, it ensures that overall volume is high enough to confirm a genuinely active, robust market. By providing an additional filter, it can strengthen the decision-making process whenever the market’s participation level is in question.
Panel
IronBot v4 displays a real-time backtest panel that summarizes the selected configuration (including the current pair, analysis window, enabled filters), as well as showing net profit, applicable exchange fees, country taxes, and the final net balance. This gives traders an immediate overview of strategy performance and risk metrics.
What Pinescript Adds Visually
The script plots:
Fibonacci levels (highlighting potential reversal zones)
Trend lines indicating bullish (green) or bearish (red) lean
Optional EMA line
Optional Fibonacci forecast lines for anticipating future moves
Automatic labeling of entry, take-profit, and stop-loss levels, indicating the profit percentage of each trade.
3. Explanation of Inputs
The strategy exposes multiple inputs that can be toggled or configured by the user:
Analysis Window : Dictates how many bars to consider for high/low calculations and the fib retracement thresholds.
TRADES
Display TP/SL: For displaying Take profits and Stop loss.
Display Forecast: When enabled, this feature calculates and projects possible future Fibonacci retracements using historical data, helping traders anticipate potential upcoming trade setups.
Leverage: Only used for the Panel and not for trades. Lets you amplify your position size; higher leverage increases potential gains but also heightens risk. TradingView strategy is using properties for doing this.
Exchange Maker Fees & Exchange Taker Fees: Only used for the Panel and not for trades. Define the percentage cost applied by your exchange for maker and taker trades, respectively. These fees are accounted for in final profit calculations of the Panel.
Country Tax: Only used for the Panel and not for trades. Specifies a tax percentage to be deducted from net profits.
STOP LOSS and TAKE PROFITS
Stop-Loss & Take-Profit Parameters: Controls the percentage distances at which the strategy will exit positions. Additionally, you can configure up to four distinct take-profit levels (TP1 through TP4). Each level should be higher target than the previous one, and you can assign a specific percentage of the total position to close at each TP, ensuring the sum equals 100%. A break-even feature is also available when multiple TPs are used.
EMA
EMA (Exponential Moving Average) Option: When enabled, the strategy opens long trades only if the current price is above the specified EMA length, and opens short trades only if it is below that threshold.
PANELS
Show Panel: For displaying the backtest integrated panel.
IRON IMPULSE SHIELD (IIS)
IIS (Iron Impulse Shield) Option: When enabled, IIS continuously monitors recent price volatility depending on the analysis window set. If the market experiences an extreme surge or drop beyond a specified threshold, IIS temporarily blocks new long or short positions.
IRON AUTO VOLUME DETECTOR (IAVD)
IAVD (Iron Auto Volume Detector) Option: When enabled, it continuously measures the average market volume over a special period, irrespective of the specific trading pair. This ensures that IronBot v4 focuses on markets with robust participation, reducing the likelihood of entering trades during low-liquidity conditions.
By changing these values, IronBot v4 reacts differently to market structure and risk management requirements. Stop-loss and take-profit levels will adjust accordingly, while advanced filters (like EMA or IIS) influence when trades can open.
4. TradingView Strategy Properties
IronBot v4 uses the built-in TradingView “strategy” functionality. In particular:
Order Placement: The code calls strategy.entry() and strategy.close() for direct orders, ensuring signals are sent immediately (no limit orders are used). This helps connect with exchange signal bots for automated execution.
Initial Capital: The code uses initial capital defined in properties for calculating Net balance in the integrated panel.
On bar close: This strategy fill orders on bar close.
Pyramiding: This strategy can take only 1 successive trade in the same direction
Be careful to configure your leverage input depending on your strategy properties.
5. Visualization
5. Purpose & Disclaimer
This script is for educational purposes only and does not constitute financial advice. Past performance does not guarantee future results. Always confirm your own risk tolerance and consult a financial professional before placing live trades. Trading leveraged products can involve substantial risk of loss.
Pivot & Source Cross StrategyPivot & ZoneCross Strategy V2
A powerful trading script combining Pivot Points, Retracement Zones, and Dynamic Stop-Loss Management. Suitable for beginners and advanced traders.
Introduction
This script enables traders to leverage Pivot Points and retracement zones for precise entry and exit points. Using price crossover detection and customizable stop-loss management, it offers a structured approach to trading various market conditions.
Features
Pivot Point Calculations: Select between Classic or Fibonacci methods for precise support and resistance levels.
Zone-Based Entry Signals: Identify price crossovers with retracement levels for optimal trade timing.
Customizable Stop-Loss Management: Automatically adjusts stop-loss levels to secure profits or limit losses.
Support for Market or Limit Orders: Choose instant market execution or specific limit entry points.
Flexible Inputs for Sources: Use Source First and Source Second to integrate external indicators like RSI and RSI MA, providing advanced customization options.
Visualization of Key Levels: Easily track retracement zones, Pivot Points, and stop-loss levels directly on the chart.
Configurable Conditions: Tailor entry/exit logic for your trading style.
How to Set Up
Choose Your Higher Timeframe (TIMEFRAME):
This determines the Pivot Points and retracement levels.
Example: Use “D” for daily pivots while trading on lower timeframes.
Select Entry Zone Patterns:
Define the pattern for detecting retracement levels:
xxx: Minor levels (steps of 10).
xx0: Intermediate levels (steps of 50).
x00: Major levels (steps of 100).
Set Entry Conditions for Long and Short Trades:
Activate or deactivate up/down conditions for xxx, xx0, or x00 patterns. Specify the count and range of crosses required for valid signals.
Configure Source Inputs (Source First and Source Second):
Assign external indicators such as RSI and RSI MA to refine entry conditions.
Tip: Adjust RSI settings in its separate indicator to suit your needs.
Select Your Order Type:
Choose between Market orders for instant execution or Limit orders for precision entries. Adjust offset zones for limit orders.
Set Up Stop-Loss Management:
Use dynamic stop-loss patterns with adjustable offsets:
HL: Stop-loss uses high/low levels of the zone.
Close: Stop-loss uses the closing price.
Customize Visualization Options:
Enable or disable xxx, xx0, x00, or 0 levels for cleaner charts. Adjust the display of retracement levels and stop-loss lines.
Apply and Monitor:
Attach the script to your chart, monitor entry/exit signals, and adjust parameters as needed.
How It Works
Calculates Pivot Points based on the chosen method ( Classic or Fibonacci ).
Detects price crossovers with retracement zones to identify potential entry points.
Dynamically adjusts stop-loss levels based on retracement zones and stop-loss patterns.
Supports both market and limit orders with customizable offsets for precise entries.
Allows integration of external sources like RSI for enhanced signal precision.
Important Notes
Use Source First and Source Second to input external indicators like RSI. You can configure RSI settings in its separate indicator to refine signals further.
Always test and optimize parameters before live trading.
Combine this script with your own analysis and proper risk management strategies.
This script is a tool to assist trading decisions but does not guarantee profits. Always trade responsibly.
Triple CCI Strategy MFI Confirmed [Skyrexio]Overview
Triple CCI Strategy MFI Confirmed leverages 3 different periods Commodity Channel Index (CCI) indicator in conjunction Money Flow Index (MFI) and Exponential Moving Average (EMA) to obtain the high probability setups. Fast period CCI is used for having the high probability to enter in the direction of short term trend, middle and slow period CCI are used for confirmation, if market now likely in the mid and long-term uptrend. MFI is used to confirm trade with the money inflow/outflow with the high probability. EMA is used as an additional trend filter. Moreover, strategy uses exponential moving average (EMA) to trail the price when it reaches the specific level. More information in "Methodology" and "Justification of Methodology" paragraphs. The strategy opens only long trades.
Unique Features
Dynamic stop-loss system: Instead of fixed stop-loss level strategy utilizes average true range (ATR) multiplied by user given number subtracted from the position entry price as a dynamic stop loss level.
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Four layers trade filtering system: Strategy utilizes two different period CCI indicators, MFI and EMA indicators to confirm the signals produced by fast period CCI.
Trailing take profit level: After reaching the trailing profit activation level scrip activate the trailing of long trade using EMA. More information in methodology.
Methodology
The strategy opens long trade when the following price met the conditions:
Fast period CCI shall crossover the zero-line.
Slow and Middle period CCI shall be above zero-lines.
Price shall close above the EMA. Crossover is not obligatory
MFI shall be above 50
When long trade is executed, strategy set the stop-loss level at the price ATR multiplied by user-given value below the entry price. This level is recalculated on every next candle close, adjusting to the current market volatility.
At the same time strategy set up the trailing stop validation level. When the price crosses the level equals entry price plus ATR multiplied by user-given value script starts to trail the price with EMA. If price closes below EMA long trade is closed. When the trailing starts, script prints the label “Trailing Activated”.
Strategy settings
In the inputs window user can setup the following strategy settings:
ATR Stop Loss (by default = 1.75)
ATR Trailing Profit Activation Level (by default = 2.25)
CCI Fast Length (by default = 14, used for calculation short term period CCI)
CCI Middle Length (by default = 25, used for calculation short term period CCI)
CCI Slow Length (by default = 50, used for calculation long term period CCI)
MFI Length (by default = 14, used for calculation MFI
EMA Length (by default = 50, period of EMA, used for trend filtering EMA calculation)
Trailing EMA Length (by default = 20)
User can choose the optimal parameters during backtesting on certain price chart.
Justification of Methodology
Before understanding why this particular combination of indicator has been chosen let's briefly explain what is CCI, MFI and EMA.
The Commodity Channel Index (CCI) is a momentum-based technical indicator that measures the deviation of a security's price from its average price over a specific period. It helps traders identify overbought or oversold conditions and potential trend reversals.
The CCI formula is:
CCI = (Typical Price − SMA) / (0.015 × Mean Deviation)
Typical Price (TP): This is calculated as the average of the high, low, and closing prices for the period.
Simple Moving Average (SMA): This is the average of the Typical Prices over a specific number of periods.
Mean Deviation: This is the average of the absolute differences between the Typical Price and the SMA.
The result is a value that typically fluctuates between +100 and -100, though it is not bounded and can go higher or lower depending on the price movement.
The Money Flow Index (MFI) is a technical indicator that measures the strength of money flowing into and out of a security. It combines price and volume data to assess buying and selling pressure and is often used to identify overbought or oversold conditions. The formula for MFI involves several steps:
1. Calculate the Typical Price (TP):
TP = (high + low + close) / 3
2. Calculate the Raw Money Flow (RMF):
Raw Money Flow = TP × Volume
3. Determine Positive and Negative Money Flow:
If the current TP is greater than the previous TP, it's Positive Money Flow.
If the current TP is less than the previous TP, it's Negative Money Flow.
4. Calculate the Money Flow Ratio (MFR):
Money Flow Ratio = Sum of Positive Money Flow (over n periods) / Sum of Negative Money Flow (over n periods)
5. Calculate the Money Flow Index (MFI):
MFI = 100 − (100 / (1 + Money Flow Ratio))
MFI above 80 can be considered as overbought, below 20 - oversold.
The Exponential Moving Average (EMA) is a type of moving average that places greater weight and significance on the most recent data points. It is widely used in technical analysis to smooth price data and identify trends more quickly than the Simple Moving Average (SMA).
Formula:
1. Calculate the multiplier
Multiplier = 2 / (n + 1) , Where n is the number of periods.
2. EMA Calculation
EMA = (Current Price) × Multiplier + (Previous EMA) × (1 − Multiplier)
This strategy leverages Fast period CCI, which shall break the zero line to the upside to say that probability of short term trend change to the upside increased. This zero line crossover shall be confirmed by the Middle and Slow periods CCI Indicators. At the moment of breakout these two CCIs shall be above 0, indicating that there is a high probability that price is in middle and long term uptrend. This approach increases chances to have a long trade setup in the direction of mid-term and long-term trends when the short-term trend starts to reverse to the upside.
Additionally strategy uses MFI to have a greater probability that fast CCI breakout is confirmed by this indicator. We consider the values of MFI above 50 as a higher probability that trend change from downtrend to the uptrend is real. Script opens long trades only if MFI is above 50. As you already know from the MFI description, it incorporates volume in its calculation, therefore we have another one confirmation factor.
Finally, strategy uses EMA an additional trend filter. It allows to open long trades only if price close above EMA (by default 50 period). It increases the probability of taking long trades only in the direction of the trend.
ATR is used to adjust the strategy risk management to the current market volatility. If volatility is low, we don’t need the large stop loss to understand the there is a high probability that we made a mistake opening the trade. User can setup the settings ATR Stop Loss and ATR Trailing Profit Activation Level to realize his own risk to reward preferences, but the unique feature of a strategy is that after reaching trailing profit activation level strategy is trying to follow the trend until it is likely to be finished instead of using fixed risk management settings. It allows sometimes to be involved in the large movements. It’s also important to make a note, that script uses another one EMA (by default = 20 period) as a trailing profit level.
Backtest Results
Operating window: Date range of backtests is 2022.04.01 - 2024.11.25. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 50%
Maximum Single Position Loss: -4.13%
Maximum Single Profit: +19.66%
Net Profit: +5421.21 USDT (+54.21%)
Total Trades: 108 (44.44% win rate)
Profit Factor: 2.006
Maximum Accumulated Loss: 777.40 USDT (-7.77%)
Average Profit per Trade: 50.20 USDT (+0.85%)
Average Trade Duration: 44 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 2h BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
MFI Strategy with Oversold Zone Exit and AveragingThis strategy is based on the Money Flow Index (MFI) and aims to enter a long position when the MFI exits an oversold zone, with specific rules for limit orders, stop-loss, and take-profit settings. Here's a detailed breakdown:
Key Components
1. **Money Flow Index (MFI)**: The strategy uses the MFI, a volume-weighted indicator, to gauge whether the market is in an oversold condition (default threshold of MFI < 20). Once the MFI rises above the oversold threshold, it signals a potential buying opportunity.
2. **Limit Order for Long Entry**: Instead of entering immediately after the oversold condition is cleared, the strategy places a limit order at a price slightly below the current price (by a user-defined percentage). This helps achieve a better entry price.
3. **Stop-Loss and Take-Profit**:
- **Stop-Loss**: A stop-loss is set to protect against significant losses, calculated as a percentage below the entry price.
- **Take-Profit**: A take-profit target is set as a percentage above the entry price to lock in gains.
4. **Order Cancellation**: If the limit order isn’t filled within a specific number of bars (default is 5 bars), it’s automatically canceled to avoid being filled at a potentially suboptimal price as market conditions change.
Strategy Workflow
1. **Identify Oversold Zone**: The strategy checks if the MFI falls below a defined oversold level (default is 20). Once this condition is met, the flag `inOversoldZone` is set to `true`.
2. **Wait for Exit from Oversold Zone**: When the MFI rises back above the oversold level, it’s considered a signal that the market is potentially recovering, and the strategy prepares to enter a position.
3. **Place Limit Order**: Upon exiting the oversold zone, the strategy places a limit order for a long position at a price below the current price, defined by the `Long Entry Percentage` parameter.
4. **Monitor Limit Order**: A counter (`barsSinceEntryOrder`) starts counting the bars since the limit order was placed. If the order isn’t filled within the specified number of bars, it’s canceled automatically.
5. **Set Stop-Loss and Take-Profit**: Once the order is filled, a stop-loss and take-profit are set based on user-defined percentages relative to the entry price.
6. **Exit Strategy**: The trade will close automatically when either the stop-loss or take-profit level is hit.
Advantages
- **Risk Management**: With configurable stop-loss and take-profit, the strategy ensures losses are limited while capturing profits at pre-defined levels.
- **Controlled Entry**: The use of a limit order below the current price helps secure a better entry point, enhancing risk-reward.
- **Oversold Exit Trigger**: Using the exit from an oversold zone as an entry condition can help catch reversals.
Disadvantages
- **Missed Entries**: If the limit order isn’t filled due to insufficient downward movement after the oversold signal, potential opportunities may be missed.
- **Dependency on MFI Sensitivity**: As the MFI is sensitive to both price and volume, its fluctuations might not always accurately represent oversold conditions.
Overall Purpose
The strategy is suited for traders who want to capture potential reversals after oversold conditions in the market, with a focus on precise entries, risk management, and an automated exit plan.
Gold Scalping Strategy with Precise EntriesThe Gold Scalping Strategy with Precise Entries is designed to take advantage of short-term price movements in the gold market (XAU/USD). This strategy uses a combination of technical indicators and chart patterns to identify precise buy and sell opportunities during times of consolidation and trend continuation.
Key Elements of the Strategy:
Exponential Moving Averages (EMAs):
50 EMA: Used as the shorter-term moving average to detect the recent price trend.
200 EMA: Used as the longer-term moving average to determine the overall market trend.
Trend Identification:
A bullish trend is identified when the 50 EMA is above the 200 EMA.
A bearish trend is identified when the 50 EMA is below the 200 EMA.
Average True Range (ATR):
ATR (14) is used to calculate the market's volatility and to set a dynamic stop loss based on recent price movements. Higher ATR values indicate higher volatility.
ATR helps define a suitable stop-loss distance from the entry point.
Relative Strength Index (RSI):
RSI (14) is used as a momentum oscillator to detect overbought or oversold conditions.
However, in this strategy, the RSI is primarily used as a consolidation filter to look for neutral zones (between 45 and 55), which may indicate a potential breakout or trend continuation after a consolidation phase.
Engulfing Patterns:
Bullish Engulfing: A bullish signal is generated when the current candle fully engulfs the previous bearish candle, indicating potential upward momentum.
Bearish Engulfing: A bearish signal is generated when the current candle fully engulfs the previous bullish candle, signaling potential downward momentum.
Precise Entry Conditions:
Long (Buy):
The 50 EMA is above the 200 EMA (bullish trend).
The RSI is between 45 and 55 (neutral/consolidation zone).
A bullish engulfing pattern occurs.
The price closes above the 50 EMA.
Short (Sell):
The 50 EMA is below the 200 EMA (bearish trend).
The RSI is between 45 and 55 (neutral/consolidation zone).
A bearish engulfing pattern occurs.
The price closes below the 50 EMA.
Take Profit and Stop Loss:
Take Profit: A fixed 20-pip target (where 1 pip = 0.10 movement in gold) is used for each trade.
Stop Loss: The stop-loss is dynamically set based on the ATR, ensuring that it adapts to current market volatility.
Visual Signals:
Buy and sell signals are visually plotted on the chart using green and red labels, indicating precise points of entry.
Advantages of This Strategy:
Trend Alignment: The strategy ensures that trades are taken in the direction of the overall trend, as indicated by the 50 and 200 EMAs.
Volatility Adaptation: The use of ATR allows the stop loss to adapt to the current market conditions, reducing the risk of premature exits in volatile markets.
Precise Entries: The combination of engulfing patterns and the neutral RSI zone provides a high-probability entry signal that captures momentum after consolidation.
Quick Scalping: With a fixed 20-pip profit target, the strategy is designed to capture small price movements quickly, which is ideal for scalping.
This strategy can be applied to lower timeframes (such as 1-minute, 5-minute, or 15-minute charts) for frequent trade opportunities in gold trading, making it suitable for day traders or scalpers. However, proper risk management should always be used due to the inherent volatility of gold.
Optimized Heikin Ashi Strategy with Buy/Sell OptionsStrategy Name:
Optimized Heikin Ashi Strategy with Buy/Sell Options
Description:
The Optimized Heikin Ashi Strategy is a trend-following strategy designed to capitalize on market trends by utilizing the smoothness of Heikin Ashi candles. This strategy provides flexible options for trading, allowing users to choose between Buy Only (long-only), Sell Only (short-only), or using both in alternating conditions based on the Heikin Ashi candle signals. The strategy works on any market, but it performs especially well in markets where trends are prevalent, such as cryptocurrency or Forex.
This script offers customizable parameters for the backtest period, Heikin Ashi timeframe, stop loss, and take profit levels, allowing traders to optimize the strategy for their preferred markets or assets.
Key Features:
Trade Type Options:
Buy Only: Enter a long position when a green Heikin Ashi candle appears and exit when a red candle appears.
Sell Only: Enter a short position when a red Heikin Ashi candle appears and exit when a green candle appears.
Stop Loss and Take Profit:
Customizable stop loss and take profit percentages allow for flexible risk management.
The default stop loss is set to 2%, and the default take profit is set to 4%, maintaining a favorable risk/reward ratio.
Heikin Ashi Timeframe:
Traders can select the desired timeframe for Heikin Ashi candle calculation (e.g., 4-hour Heikin Ashi candles for a 1-hour chart).
The strategy smooths out price action and reduces noise, providing clearer signals for entry and exit.
Inputs:
Backtest Start Date / End Date: Specify the period for testing the strategy’s performance.
Heikin Ashi Timeframe: Select the timeframe for Heikin Ashi candle generation. A higher timeframe helps smooth the trend, which is beneficial for trading lower timeframes.
Stop Loss (in %) and Take Profit (in %): Enable or disable stop loss and take profit, and adjust the levels based on market conditions.
Trade Type: Choose between Buy Only or Sell Only based on your market outlook and strategy preference.
Strategy Performance:
In testing with BTC/USD, this strategy performed well in a 4-hour Heikin Ashi timeframe applied on a 1-hour chart over a period from January 1, 2024, to September 12, 2024. The results were as follows:
Initial Capital: 1 USD
Order Size: 100% of equity
Net Profit: +30.74 USD (3,073.52% return)
Percent Profitable: 78.28% of trades were winners.
Profit Factor: 15.825, indicating that the strategy's profitable trades far outweighed its losses.
Max Drawdown: 4.21%, showing low risk exposure relative to the large profit potential.
This strategy is ideal for both beginner and advanced traders who are looking to follow trends and avoid market noise by using Heikin Ashi candles. It is also well-suited for traders who prefer automated risk management through the use of stop loss and take profit levels.
Recommended Use:
Best Markets: This strategy works well on trending markets like cryptocurrency, Forex, or indices.
Timeframes: Works best when applied to lower timeframes (e.g., 1-hour chart) with a higher Heikin Ashi timeframe (e.g., 4-hour candles) to smooth out price action.
Leverage: The strategy performs well with leverage, but users should consider using 2x to 3x leverage to avoid excessive risk and potential liquidation. The strategy's low drawdown allows for moderate leverage use while maintaining risk control.
Customization: Traders can adjust the stop loss and take profit percentages based on their risk appetite and market conditions. A default setting of a 2% stop loss and 4% take profit provides a balanced risk/reward ratio.
Notes:
Risk Management: Traders should enable stop loss and take profit settings to maintain effective risk management and prevent large drawdowns during volatile market conditions.
Optimization: This strategy can be further optimized by adjusting the Heikin Ashi timeframe and risk parameters based on specific market conditions and assets.
Backtesting: The built-in backtesting functionality allows traders to test the strategy across different market conditions and historical data to ensure robustness before applying it to live trading.
How to Apply:
Select your preferred market and chart.
Choose the appropriate Heikin Ashi timeframe based on the chart's timeframe. (e.g., use 4-hour Heikin Ashi candles for 1-hour chart trends).
Adjust stop loss and take profit based on your risk management preference.
Run backtesting to evaluate its performance before applying it in live trading.
This strategy can be further modified and optimized based on personal trading style and market conditions. It’s important to monitor performance regularly and adjust settings as needed to align with market behavior.
MACD with 1D Stochastic Confirmation Reversal StrategyOverview
The MACD with 1D Stochastic Confirmation Reversal Strategy utilizes MACD indicator in conjunction with 1 day timeframe Stochastic indicators to obtain the high probability short-term trend reversal signals. The main idea is to wait until MACD line crosses up it’s signal line, at the same time Stochastic indicator on 1D time frame shall show the uptrend (will be discussed in methodology) and not to be in the oversold territory. Strategy works on time frames from 30 min to 4 hours and opens only long trades.
Unique Features
Dynamic stop-loss system: Instead of fixed stop-loss level strategy utilizes average true range (ATR) multiplied by user given number subtracted from the position entry price as a dynamic stop loss level.
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Higher time frame confirmation: Strategy utilizes 1D Stochastic to establish the major trend and confirm the local reversals with the higher probability.
Trailing take profit level: After reaching the trailing profit activation level scrip activate the trailing of long trade using EMA. More information in methodology.
Methodology
The strategy opens long trade when the following price met the conditions:
MACD line of MACD indicator shall cross over the signal line of MACD indicator.
1D time frame Stochastic’s K line shall be above the D line.
1D time frame Stochastic’s K line value shall be below 80 (not overbought)
When long trade is executed, strategy set the stop-loss level at the price ATR multiplied by user-given value below the entry price. This level is recalculated on every next candle close, adjusting to the current market volatility.
At the same time strategy set up the trailing stop validation level. When the price crosses the level equals entry price plus ATR multiplied by user-given value script starts to trail the price with EMA. If price closes below EMA long trade is closed. When the trailing starts, script prints the label “Trailing Activated”.
Strategy settings
In the inputs window user can setup the following strategy settings:
ATR Stop Loss (by default = 3.25, value multiplied by ATR to be subtracted from position entry price to setup stop loss)
ATR Trailing Profit Activation Level (by default = 4.25, value multiplied by ATR to be added to position entry price to setup trailing profit activation level)
Trailing EMA Length (by default = 20, period for EMA, when price reached trailing profit activation level EMA will stop out of position if price closes below it)
User can choose the optimal parameters during backtesting on certain price chart, in our example we use default settings.
Justification of Methodology
This strategy leverages 2 time frames analysis to have the high probability reversal setups on lower time frame in the direction of the 1D time frame trend. That’s why it’s recommended to use this strategy on 30 min – 4 hours time frames.
To have an approximation of 1D time frame trend strategy utilizes classical Stochastic indicator. The Stochastic Indicator is a momentum oscillator that compares a security's closing price to its price range over a specific period. It's used to identify overbought and oversold conditions. The indicator ranges from 0 to 100, with readings above 80 indicating overbought conditions and readings below 20 indicating oversold conditions.
It consists of two lines:
%K: The main line, calculated using the formula (CurrentClose−LowestLow)/(HighestHigh−LowestLow)×100 . Highest and lowest price taken for 14 periods.
%D: A smoothed moving average of %K, often used as a signal line.
Strategy logic assumes that on 1D time frame it’s uptrend in %K line is above the %D line. Moreover, we can consider long trade only in %K line is below 80. It means that in overbought state the long trade will not be opened due to higher probability of pullback or even major trend reversal. If these conditions are met we are going to our working (lower) time frame.
On the chosen time frame, we remind you that for correct work of this strategy you shall use 30min – 4h time frames, MACD line shall cross over it’s signal line. The MACD (Moving Average Convergence Divergence) is a popular momentum and trend-following indicator used in technical analysis. It helps traders identify changes in the strength, direction, momentum, and duration of a trend in a stock's price.
The MACD consists of three components:
MACD Line: This is the difference between a short-term Exponential Moving Average (EMA) and a long-term EMA, typically calculated as: MACD Line=12-period EMA−26-period
Signal Line: This is a 9-period EMA of the MACD Line, which helps to identify buy or sell signals. When the MACD Line crosses above the Signal Line, it can be a bullish signal (suggesting a buy); when it crosses below, it can be a bearish signal (suggesting a sell).
Histogram: The histogram shows the difference between the MACD Line and the Signal Line, visually representing the momentum of the trend. Positive histogram values indicate increasing bullish momentum, while negative values indicate increasing bearish momentum.
In our script we are interested in only MACD and signal lines. When MACD line crosses signal line there is a high chance that short-term trend reversed to the upside. We use this strategy on 45 min time frame.
ATR is used to adjust the strategy risk management to the current market volatility. If volatility is low, we don’t need the large stop loss to understand the there is a high probability that we made a mistake opening the trade. User can setup the settings ATR Stop Loss and ATR Trailing Profit Activation Level to realize his own risk to reward preferences, but the unique feature of a strategy is that after reaching trailing profit activation level strategy is trying to follow the trend until it is likely to be finished instead of using fixed risk management settings. It allows sometimes to be involved in the large movements.
Backtest Results
Operating window: Date range of backtests is 2023.01.01 - 2024.08.01. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 30%
Maximum Single Position Loss: -4.79%
Maximum Single Profit: +20.14%
Net Profit: +2361.33 USDT (+44.72%)
Total Trades: 123 (44.72% win rate)
Profit Factor: 1.623
Maximum Accumulated Loss: 695.80 USDT (-5.48%)
Average Profit per Trade: 19.20 USDT (+0.59%)
Average Trade Duration: 30 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe between 30 min and 4 hours and chart (optimal performance observed on 45 min BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
Double CCI Confirmed Hull Moving Average Reversal StrategyOverview
The Double CCI Confirmed Hull Moving Average Strategy utilizes hull moving average (HMA) in conjunction with two commodity channel index (CCI) indicators: the slow and fast to increase the probability of entering when the short and mid-term uptrend confirmed. The main idea is to wait until the price breaks the HMA while both CCI are showing that the uptrend has likely been already started. Moreover, strategy uses exponential moving average (EMA) to trail the price when it reaches the specific level. The strategy opens only long trades.
Unique Features
Dynamic stop-loss system: Instead of fixed stop-loss level strategy utilizes average true range (ATR) multiplied by user given number subtracted from the position entry price as a dynamic stop loss level.
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Double trade setup confirmation: Strategy utilizes two different period CCI indicators to confirm the breakouts of HMA.
Trailing take profit level: After reaching the trailing profit activation level scrip activate the trailing of long trade using EMA. More information in methodology.
Methodology
The strategy opens long trade when the following price met the conditions:
Short-term period CCI indicator shall be above 0.
Long-term period CCI indicator shall be above 0.
Price shall cross the HMA and candle close above it with the same candle
When long trade is executed, strategy set the stop-loss level at the price ATR multiplied by user-given value below the entry price. This level is recalculated on every next candle close, adjusting to the current market volatility.
At the same time strategy set up the trailing stop validation level. When the price crosses the level equals entry price plus ATR multiplied by user-given value script starts to trail the price with EMA. If price closes below EMA long trade is closed. When the trailing starts, script prints the label “Trailing Activated”.
Strategy settings
In the inputs window user can setup the following strategy settings:
ATR Stop Loss (by default = 1.75)
ATR Trailing Profit Activation Level (by default = 2.25)
CCI Fast Length (by default = 25, used for calculation short term period CCI
CCI Slow Length (by default = 50, used for calculation long term period CCI)
Hull MA Length (by default = 34, period of HMA, which shall be broken to open trade)
Trailing EMA Length (by default = 20)
User can choose the optimal parameters during backtesting on certain price chart.
Justification of Methodology
Before understanding why this particular combination of indicator has been chosen let's briefly explain what is CCI and HMA.
The Commodity Channel Index (CCI) is a momentum-based technical indicator used in trading to measure a security's price relative to its average price over a given period. Developed by Donald Lambert in 1980, the CCI is primarily used to identify cyclical trends in a security, helping traders to spot potential buying or selling opportunities.
The CCI formula is:
CCI = (Typical Price − SMA) / (0.015 × Mean Deviation)
Typical Price (TP): This is calculated as the average of the high, low, and closing prices for the period.
Simple Moving Average (SMA): This is the average of the Typical Prices over a specific number of periods.
Mean Deviation: This is the average of the absolute differences between the Typical Price and the SMA.
The result is a value that typically fluctuates between +100 and -100, though it is not bounded and can go higher or lower depending on the price movement.
The Hull Moving Average (HMA) is a type of moving average that was developed by Alan Hull to improve upon the traditional moving averages by reducing lag while maintaining smoothness. The goal of the HMA is to create an indicator that is both quick to respond to price changes and less prone to whipsaws (false signals).
How the Hull Moving Average is Calculated?
The Hull Moving Average is calculated using the following steps:
Weighted Moving Average (WMA): The HMA starts by calculating the Weighted Moving Average (WMA) of the price data over a period square root of n (sqrt(n))
Speed Adjustment: A WMA is then calculated for half of the period n/2, and this is multiplied by 2 to give more weight to recent prices.
Lag Reduction: The WMA of the full period n is subtracted from the doubled n/2 WMA.
Final Smoothing: To smooth the result and reduce noise, a WMA is calculated for the square root of the period n.
The formula can be represented as:
HMA(n) = WMA(WMA(n/2) × 2 − WMA(n), sqrt(n))
The Weighted Moving Average (WMA) is a type of moving average that gives more weight to recent data points, making it more responsive to recent price changes than a Simple Moving Average (SMA). In a WMA, each data point within the selected period is multiplied by a weight, with the most recent data receiving the highest weight. The sum of these weighted values is then divided by the sum of the weights to produce the WMA.
This strategy leverages HMA of user given period as a critical level which shall be broken to say that probability of trend change to the upside increased. HMA reacts faster than EMA or SMA to the price change, that’s why it increases chances to enter new trade earlier. Long-term period CCI helps to have an approximation of mid-term trend. If it’s above 0 the probability of uptrend increases. Short-period CCI allows to have an approximation of short-term trend reversal from down to uptrend. This approach increases chances to have a long trade setup in the direction of mid-term trend when the short-term trend starts to reverse.
ATR is used to adjust the strategy risk management to the current market volatility. If volatility is low, we don’t need the large stop loss to understand the there is a high probability that we made a mistake opening the trade. User can setup the settings ATR Stop Loss and ATR Trailing Profit Activation Level to realize his own risk to reward preferences, but the unique feature of a strategy is that after reaching trailing profit activation level strategy is trying to follow the trend until it is likely to be finished instead of using fixed risk management settings. It allows sometimes to be involved in the large movements. It’s also important to make a note, that script uses HMA to enter the trade, but for trailing it leverages EMA. It’s used because EMA has no such fast reaction to price move which increases probability not to be stopped out from any significant uptrend move.
Backtest Results
Operating window: Date range of backtests is 2022.07.01 - 2024.08.01. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 100%
Maximum Single Position Loss: -4.67%
Maximum Single Profit: +19.66%
Net Profit: +14897.94 USDT (+148.98%)
Total Trades: 104 (36.54% win rate)
Profit Factor: 2.312
Maximum Accumulated Loss: 1302.66 USDT (-9.58%)
Average Profit per Trade: 143.25 USDT (+0.96%)
Average Trade Duration: 34 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 2h BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
Advanced Gold Scalping Strategy with RSI Divergence# Advanced Gold Scalping Strategy with RSI Divergence
## Overview
This Pine Script implements an advanced scalping strategy for gold (XAUUSD) trading, primarily designed for the 1-minute timeframe. The strategy utilizes the Relative Strength Index (RSI) indicator along with its moving average to identify potential trade setups based on divergences between price action and RSI movements.
## Key Components
### 1. RSI Calculation
- Uses a customizable RSI length (default: 60)
- Allows selection of the source for RSI calculation (default: close price)
### 2. Moving Average of RSI
- Supports multiple MA types: SMA, EMA, SMMA (RMA), WMA, VWMA, and Bollinger Bands
- Customizable MA length (default: 3)
- Option to display Bollinger Bands with adjustable standard deviation multiplier
### 3. Divergence Detection
- Implements both bullish and bearish divergence identification
- Uses pivot high and pivot low points to detect divergences
- Allows for customization of lookback periods and range for divergence detection
### 4. Entry Conditions
- Long Entry: Bullish divergence when RSI is below 40
- Short Entry: Bearish divergence when RSI is above 60
### 5. Trade Management
- Stop Loss: Customizable, default set to 11 pips
- Take Profit: Customizable, default set to 33 pips
### 6. Visualization
- Plots RSI line and its moving average
- Displays horizontal lines at 30, 50, and 70 RSI levels
- Shows Bollinger Bands when selected
- Highlights divergences with "Bull" and "Bear" labels on the chart
## Input Parameters
- RSI Length: Adjusts the period for RSI calculation
- RSI Source: Selects the price source for RSI (close, open, high, low, hl2, hlc3, ohlc4)
- MA Type: Chooses the type of moving average applied to RSI
- MA Length: Sets the period for the moving average
- BB StdDev: Adjusts the standard deviation multiplier for Bollinger Bands
- Show Divergence: Toggles the display of divergence labels
- Stop Loss: Sets the stop loss distance in pips
- Take Profit: Sets the take profit distance in pips
## Strategy Logic
1. **RSI Calculation**:
- Computes RSI using the specified length and source
- Calculates the chosen type of moving average on the RSI
2. **Divergence Detection**:
- Identifies pivot points in both price and RSI
- Checks for higher lows in RSI with lower lows in price (bullish divergence)
- Checks for lower highs in RSI with higher highs in price (bearish divergence)
3. **Trade Entry**:
- Enters a long position when a bullish divergence is detected and RSI is below 40
- Enters a short position when a bearish divergence is detected and RSI is above 60
4. **Position Management**:
- Places a stop loss order at the entry price ± stop loss pips (depending on the direction)
- Sets a take profit order at the entry price ± take profit pips (depending on the direction)
5. **Visualization**:
- Plots the RSI and its moving average
- Draws horizontal lines for overbought/oversold levels
- Displays Bollinger Bands if selected
- Shows divergence labels on the chart for identified setups
## Usage Instructions
1. Apply the script to a 1-minute XAUUSD (Gold) chart in TradingView
2. Adjust the input parameters as needed:
- Increase RSI Length for less frequent but potentially more reliable signals
- Modify MA Type and Length to change the sensitivity of the RSI moving average
- Adjust Stop Loss and Take Profit levels based on current market volatility
3. Monitor the chart for Bull (long) and Bear (short) labels indicating potential trade setups
4. Use in conjunction with other analysis and risk management techniques
## Considerations
- This strategy is designed for short-term scalping and may not be suitable for all market conditions
- Always backtest and forward test the strategy before using it with real capital
- The effectiveness of divergence-based strategies can vary depending on market trends and volatility
- Consider using additional confirmation signals or filters to improve the strategy's performance
Remember to adapt the strategy parameters to your risk tolerance and trading style, and always practice proper risk management.
[Camarilla Pivots] Signal Clean Up Analysis with Backtest (TSO)Camarilla Pivots NEW GEN Indicator!
This is a full-cycle trading system indicator, which uses Camarilla Pivots for generating signals using a custom developed algorithm, TP (Take Profit) and SL (Stop Loss) levels. There are 3 SOURCES for signals (each can be used separately or in combination or all 3 can be used at the same time, each signal SOURCE is using Camarilla Pivots levels to open optimal trade direction) with chained (NOTE: There are many potential profitable setups available, by combining clean up features availabe in the indicator settings!) signal cleanup and analysis approach with scheduling and alerting capabilities. Works best with shorter timeframes: 1M, 5M, 15M, 1H.
NOTE: Every calculation is done on a confirmed closed candle bar state, so the indicator will never repaint!
NOTE: At position open - there will be calculated Take-Profit and Stop-Loss targets, however each target is considered hit, when candle bar closes breaking that target, so Take-Profit and Stop-Loss when hit will slightly differ then what you see at position open!
===========================================================================
Explanation of all the Features | Configuration Guide | Indicator Settings | Signal Cleanup Analysis
---------------------------------------------------------------------------
>>> Customizable Backtesting for a specific date range, results via TradingView strategy, which includes “Deep Backtesting” for largest amounts of data on trading results.
>>> Trading Schedule with customizable trading daily time range, automatic closing/alert trades before Power Hour or right before market closes or leave it open until next day.
>>> 3 Trading Systems.
>>> Multiple Signal SOURCEs for opening trades, either SOURCE can be used or both at the same time!
>>> Static/Dynamic Stop-Loss setups (HIGHLIGHT: Stop-Loss will be moved to Entry after TP1 is taken, which minimizes risk).
>>> Single or Multiple profit targets (up to 5).
>>> Take-Profit customizable offset feature (set your Take-Profit targets slightly before everyone is expecting it!).
>>> Candle bar signal analysis (matching candle color, skip opposite structured and/or doji candle uncertain signals).
>>> Additional analysis of VWAP/EMA/ATR/EWO (Elliot Wave Oscillator)/Divergence MACD+RSI/Volume signal confirmation (clean up your chart with indicator showing only the best potential signals!).
>>> Advanced Alerts setup, which can be potentially setup with a trading bot over TradingView Webhook (NOTE: This will require advanced programming knowledge).
===========================================================================
Labels, plots, colors explanations:
---------------------------------------------------------------------------
>>>>> LONG open: green "house" looking arrow below candle bar.
>>>>> SHORT open: red "house" looking arrow above candle bar.
>>>>> LONG/SHORT take-profit target: green/red circles (multi-profit > TP2/3/4/5 smaller circles).
>>>>> LONG/SHORT stop-loss target: green/red + crosses.
>>>>> LONG/SHORT take-profit hits: green/red diamonds.
>>>>> LONG/SHORT stop-loss hits: green/red X-crosses.
>>>>> LONG/SHORT EOD (End of Day | Intraday style) close (profitable trade): green/red squares.
>>>>> LONG/SHORT EOD (End of Day | Intraday style) close (loss trade): green/red PLUS(+)-crosses.
===========================================================================
Date Range and Trading Schedule Settings
---------------------------------------------------------------------------
>>>>> Date Range: Select your start and/or end dates (uncheck “End” for indicator to show results up to the very moment and to use for LIVE trading) for backtesting results, if not using backtesting – uncheck “Start”/“End” to turn it off.
>>>>> Use TradingView “Strategy Tester” to see backtesting results
NOTE: If Strategy Tester does not show any results with Date Ranged fully unchecked, there may be an issue where a script opens a trade, but there is not enough TradingView power to set the Take-Profit and Stop-Loss and somehow an open trade gets stuck and never closes, so there are “no trades present”. In such case you will need to manually check “Start”/“End” dates or use “Depp Backtesting” feature!
>>>>> Trading Schedule: This is where you can setup Intraday Session or any custom session schedule you wish. Turn it ON. Select trading hours. Select EOD (End of Day) setting (NOTE: If it will be OFF, the indicator will assume you are holding your position open until next day!). Please note the EOD trade closure times with the 2 different Intraday close settings when turned on:
At Market Close:
1/3/5min > will close at 15:55pm ET
15min > will close at 15:45pm ET
30min > will close at 15:30pm ET
45min > will close at 15:45pm ET
60min > will close at 15:00pm ET
Before Power Hour:
1/3/5min > will close at 15:00pm ET
15min > will close at 15:00pm ET
30min > will close at 15:00pm ET
45min > will close at 15:00pm ET
60min > will close at 15:00pm ET
>>> Trading Systems: 1) "Open Until Closed by TP or SL": the signal will only open a trade if no trades are currently open/trunning, a trade can only be closed by Take Profit, Stop Loss or End of Day close (if turned on) | 2) "Open Until Closed by TP or SL + OCA": Same as 1), but if there is an opposite signal to the trade which is currently open > it will immediately be closed with new trade open or End of Day close (if turned on) | 3) "OCA (no TP or SL)": There are is Take Profit or Stop Loss, only an opposite signal will close current trade and open an opposite one or End of Day close (if turned on).
>>> Position Open sources:
>>>>> Position Open - SOURCE1 | LONG: S3, SL: S4, TP1: R3, TP2: R4, TP3: R5, TP4/5: Smart Formula | SHORT: R3, SL: R4, TP1: S3, TP2: S4, TP3: S5, TP4/5: Smart Formula
>>>>> Position Open - SOURCE2 | LONG: R4, SL: R3, TP1: R5, TP2/3/4/5: Smart Formula | SHORT: S4, SL: S3, TP1: S5, TP2/3/4/5: Smart Formula
>>>>> Position Open - SOURCE3 | LONG: R5, SL: R4, TP1/2/3/4/5: Smart Formula | SHORT: S5, SL: S4, TP1/2/3/4/5: Smart Formula
>>> Turn On/Off: Current Position SL + Opposite Position Open Signal on the same closing candle bar (If current trade hits Stop-Loss and at that same closing candle bar there is a signal for an opposite direction trade > indicator will close current position as Stop-Loss and immediately open an opposite position). NOTE: With this option turned on, there will be more trades, but not necessarily better results, since after Stop-Loss is hit, it may make sense to wait a little before opening an opposite trade, even if it matches the condition at the same time when Stop-Loss is hit, but sometimes it shows great results, so this setting/feature is included.
>>> Turn On/Off: Turn On/Off: Current Position REGULAR SL | Only the SL + Opposite Position Open will trigger if turned on, IF NOT - THERE WILL BE NO STOP-LOSS AT ALL!!! NOTE: It is very dangerous to trade without Stop-Loss!
>>>>> Signal Candle Bar consuming Take-Profits - position/trade signal candle bar is big enought to "consume"/close ahead the first TP setting > the signal can either be skipped, or all Take-Profit areas pushed ahead using smart formula)
>>>>> MULTIPROFIT | TP (Take-Profit) System: Once the trade is open, all Take-Profit target(s) are immediately calculated and set for the trade > once the target(s) is hit > trade will be partially closed (if candle bar closes beyond several Take-Profit targets > trade will be reduced accordingly to the amount of how many Take-Profit targets were hit)
>>>>> MULTIPROFIT | SL (Stop-Loss) System: 1) Static – Once the trade is open, Stop-Loss is calculated and set for the remaining of the trade ||| 2) Dynamic – At trade open, Stop-Loss is calculated and set the same way, however once 1st Take-Profit is taken > Stop-Loss is moved to Entry, reducing the risk.
>>>>> # of TPs (number of take profit targets): Just like it is named, this is where you select the number of Take-Profit targets for your trading system (NOTE: If "OCA (no TP or SL)" Trading System is selected, this setting won’t do anything, since there are no TP or SLs for that system).
>>>>> TP(s) offset: This is a special feature for all Take-Profit targets, where you can turn on a customizable offset, so that if the price is almost hitting the Take-Profit target, but never actually touches it > you will capture it. This is good to use with HHLL (Highest High Lowest Low), which is pretty much a Support/Resistance as often the price will nearly touch these strong areas and turn around…
===========================================================================
Signal Analysis and Cleanup Settings
---------------------------------------------------------------------------
>>>>> Candle Analysis | Candle Color signal confirmation: If closed candle bar color does not match the signal direction > no trade will be open.
>>>>> Candle Analysis | Skip opposite candle signals: If closed candle bar color will match the signal direction, but candle structure will be opposite (for example: bearish green hammer, long high stick on top of a small green square) > no trade will be open.
>>>>> Candle Analysis | Skip doji candle signals: If closed candle bar will be the uncertain doji > no trade will be open.
>>>>> Divergence/Oscillator Analysis | EWO (Elliot Wave Oscillator) signal confirmation: LONG will only be open if at signal, EWO is green or will be at bullish slope (you can select which setting you desire), SHORT if EWO is red or will be at bearish slope.
>>>>> Divergence/Oscillator Analysis | VWAP signal confirmation: LONG will only be open if at signal, the price will be above VWAP, SHORT if below.
>>>>> Divergence/Oscillator Analysis | Moving Average signal confirmation: LONG will only be open if at signal, the price will be above selected Moving Average, SHORT if below.
>>>>> Divergence/Oscillator Analysis | ATR signal confirmation: LONG will only be open if at signal, the price will be above ATR, SHORT if below.
>>>>> Divergence/Oscillator Analysis | RSI + MACD signal confirmation: LONG will only be open if at signal, RSI + MACD will be bullish, SHORT if RSI + MACD will be bearish.
>>>>> Volume signal confirmation: LONG/SHORT will only be opened with strong Volume matching the signal direction, by default, strong Volume percentage is set to 150% and weak to 50%, but you can change it as you desire.
===========================================================================
||||||||||||||||||||||||||||||||||| *** ||||||||||||||||||||||||||||||||||| *** |||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||| *** ||||||||||||||||||||||||||||||||||| *** |||||||||||||||||||||||||||||||||||
TP System - VERY IMPORTANT INFO!
-------------------------------------------------------------------------------------------------------------------
"TP PERCENTAGE" - amount by which current trade/position needs to be reduced/partially closed/sold.
-------------------------------------------------------------------------------------------------------------------
TP System: Dynamic
"TP PERCENTAGE" - will always be the same amount (trade/position size divided by the # of take-profit(TP) targets) and percentage to be closed will always be of the ORIGINAL trade/position.
-------------------------------------------------------------------------------------------------------------------
TP System: Static
"TP PERCENTAGE" - will always be the same amount IF take-profit(TP) targets are hit 1-by-1 (TP1 > TP2 > TP3 > TP4 > TP5), otherwise it will vary and unless it is a 1st take-profit(TP1), the REMAINING trade/position size will always be smaller than original and therefore the percentage to be closed will always be of the REMAINING trade/position and NOT the original one!
-------------------------------------------------------------------------------------------------------------------
"TP PERCENTAGE" CheatSheet (these are the only percentages you may see)
-----------------------------------------------------------------------
TP PERCENTAGE---Close/Sell Amount-------------Example (trade size: 50 stocks)
20%-------------trade size * 0.2--------------50 * 0.2 = 10 stocks
25%-------------trade size * 0.25-------------50 * 0.25 = 12.5(~13) stocks
34%-------------trade size * 0.34-------------50 * 0.34 = 17 stocks
40%-------------trade size * 0.4--------------50 * 0.4 = 20 stocks
50%-------------trade size * 0.5--------------50 * 0.5 = 25 stocks
60%-------------trade size * 0.6--------------50 * 0.6 = 30 stocks
66%-------------trade size * 0.66-------------50 * 0.66 = 33 stocks
75%-------------trade size * 0.75-------------50 * 0.75 = 37.5(~38) stocks
80%-------------trade size * 0.8--------------50 * 0.8 = 40 stocks
100%------------trade size--------------------50 = 50 stocks
-----------------------------------------------------------------------
If for any reason a portion of the current/remaining trade closed at such occurrence was slightly wrong, it is not an issue. Such occurrences are rare and with slight difference in partial TP closed is not significant to overall performance of our algorithms.
||||||||||||||||||||||||||||||||||| *** ||||||||||||||||||||||||||||||||||| *** |||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||| *** ||||||||||||||||||||||||||||||||||| *** |||||||||||||||||||||||||||||||||||
Alert Settings (you don’t have to touch this section unless you will be using TradingView alerts through a Webhook to use with trading bot)
---------------------------------------------------------------------------
Here is how a LONG OPEN alert looks like.
NOTE: Each label , , etc. is customizable, you can change the text of it within indicator Input settings.
ALERT >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
COIN: BTCUSD
TIMEFRAME: 15M
LONG: OPEN
ENTRY: 20000
TP1: 20500
TP2: 21000
TP3: 21500
TP4: 22500
TP5: 23500
SL: 19000
Leverage: 0
---------------------------------------------------------------------------
Here is how a TP1 alert will look with 5 TPs breakdown of the trade.
NOTE1: Next to TP1 taken it will show at which price it was triggered.
NOTE2: Next to "TP Percentage" it shows how much of the CURRENT/ACTIVE/REMAINING trade needs to be closed.
NOTE2: If TP2/3/4/5 comes before TP1 - the alert will tell you exactly how many percent of the trade needs to be closed!
ALERT >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
COIN: BTCUSD
TIMEFRAME: 15M
LONG: TP1
TP1: 20500
TP Percentage: 20%
---------------------------------------------------------------------------
Here is how an alert will look for LONG - STOP-LOSS.
ALERT >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
COIN: BTCUSD
TIMEFRAME: 15M
ENTRY: 20000
LONG: SL
SL: 19000
---------------------------------------------------------------------------
Here is how an alert will look for LONG - EOD (End of Day) In Profit close.
ALERT >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
COIN: BTCUSD
TIMEFRAME: 15M
LONG: EOD-Close (profit)
ENTRY: 20000
EOD-Close: 21900
===========================================================================
Adding Alerts in TradngView
---------------------------------------------------------------------------
-Add indicator to chart and make sure it is configured (check back-testing results)
-Right-click anywhere on the TradingView chart
-Click on Add alert
-Condition: Select this indicator by it’s name
-Alert name: Whatever you want
-Hit “Create”
-Note: If you change ANY Settings within the indicator – you must DELETE the current alert and create a new one per steps above, otherwise it will continue triggering alerts per old Settings!
===========================================================================
If you have any questions or issues with the indicator, please message me directly via TradingView.
---------------------------------------------------------------------------
Good Luck! (NOTE: Trading is very risky, past performance is not necessarily indicative of future results, so please trade responsibly!)
---------------------------------------------------------------------------
NOTE: There seems to be a strange glitch when strategy is running live, it will show "double-take" take-profits labels on the chart. This is not affecting the script logic and backtesting results, if you will remove/re-add the script afterwards, it will no longer show the duplicate orders... this must be some sort of a glitch as every alert was thoroughly tested to make sure everything is working!
Mechanical Trading StrategyThe "Mechanical Trading Strategy" is a simple and systematic approach to trading that aims to capture short-term price movements in the financial markets. This strategy focuses on executing trades based on specific conditions and predetermined profit targets and stop loss levels.
Key Features:
Profit Target: The strategy allows you to set a profit target as a percentage of the entry price. This target represents the desired level of profit for each trade.
Stop Loss: The strategy incorporates a stop loss level as a percentage of the entry price. This level represents the maximum acceptable loss for each trade, helping to manage risk.
Entry Condition: The strategy triggers trades at a specific time. In this case, the condition for entering a trade is based on the hour of the candle being 16 (4:00 PM). This time-based entry condition provides a systematic approach to executing trades.
Position Sizing: The strategy determines the position size based on a fixed percentage of the available equity. This approach ensures consistent risk management and allows for potential portfolio diversification.
Execution:
When the entry condition is met, signified by the hour being 16, the strategy initiates a long position using the strategy.entry function. It sets the exit conditions using the strategy.exit function, with a limit order for the take profit level and a stop order for the stop loss level.
Take Profit and Stop Loss:
The take profit level is calculated by adding a percentage of the entry price to the entry price itself. This represents the profit target for the trade. Conversely, the stop loss level is calculated by subtracting a percentage of the entry price from the entry price. This level represents the maximum acceptable loss for the trade.
By using this mechanical trading strategy, traders can establish a disciplined and systematic approach to their trading decisions. The predefined profit target and stop loss levels provide clear exit rules, helping to manage risk and potentially maximize returns. However, it is important to note that no trading strategy is guaranteed to be profitable, and careful analysis and monitoring of market conditions are always recommended.
Price Action - Support & Resistance + MACD LONG StrategyUsing "Price Action - Support & Resistance by DGT" and the MACD (Moving Average Convergence Divergence) indicator in TradingView can help develop a trade strategy. Here's a step-by-step approach you can follow:
1. Identifying Support and Resistance Levels: Apply the "Price Action - Support & Resistance by DGT" indicator to your chart. This indicator helps you identify key support and resistance levels based on price action. These levels act as potential areas where the price may reverse or consolidate.
2. Confirming Support and Resistance Levels: Once the indicator has plotted support and resistance levels on your chart, analyze the historical price action around these levels. Look for multiple touches or bounces from the same level, which adds strength to the support or resistance zone.
3. Analyzing the MACD Indicator: Add the MACD indicator to your chart. The MACD consists of two lines: the MACD line and the signal line, along with a histogram representing the difference between the two lines. The MACD helps identify momentum and potential trend reversals.
When the MACD line crosses above the signal line and the histogram turns positive, it suggests bullish momentum.
4. Identifying Trade Opportunities:
Bullish Trade: Look for a bullish setup when the price approaches a strong support level identified by the "Price Action - Support & Resistance by DGT" indicator. Wait for the MACD lines to cross above the signal line and the histogram to turn positive, indicating bullish momentum. Enter a long position with a stop loss below the
support level.
Managing the Trade: Once you enter a trade, consider setting a target based on the distance between your entry point and the nearest significant support or resistance level. You can also use trailing stop losses or other risk management techniques to protect your profits and limit potential losses.
Remember that no trading strategy is guaranteed to be successful, and it's important to practice proper risk management and conduct thorough analysis before making any trading decisions. Additionally, it's recommended to backtest and demo trade this strategy before using it with real money.
[MT] Strategy Backtest Template| Initial Release | | EN |
An update of my old script, this script is designed so that it can be used as a template for all those traders who want to save time when programming their strategy and backtesting it, having functions already programmed that in normal development would take you more time to program, with this template you can simply add your favorite indicator and thus be able to take advantage of all the functions that this template has.
🔴Stop Loss and 🟢Take Profit:
No need to mention that it is a Stop Loss and a Take Profit, within these functions we find the options of: fixed percentage (%), fixed price ($), ATR, especially for Stop Loss we find the Pivot Points, in addition to this, the price range between the entry and the Stop Loss can be converted into a trailing stop loss, instead, especially for the Take Profit we have an option to choose a 1:X ratio that complements very well with the Pivot Points.
📈Heikin Ashi Based Entries:
Heikin Ashi entries are trades that are calculated based on Heikin Ashi candles but their price is executed to Japanese candles, thus avoiding false results that occur in Heikin candlestick charts, this making in certain cases better results in strategies that are executed with this option compared to Japanese candlesticks.
📊Dashboard:
A more visual and organized way to see the results and necessary data produced by our strategy, among them we can see the dates between which our operations are made regardless if you have activated some time filter, usual data such as Profit, Win Rate, Profit factor are also displayed in this panel, additionally data such as the total number of operations, how many were gains and how many losses, the average profit and loss for each operation and finally the maximum profits and losses followed, which are data that will be very useful to us when we elaborate our strategies.
Feel free to use this template to program your own strategies, if you find errors or want to request a new feature let me know in the comments or through my social networks found in my tradingview profile.
| Update 1.1 | | EN |
➕Additions: '
Time sessions filter and days of the week filter added to the time filter section.
Option to add leverage to the strategy.
5 Moving Averages, RSI, Stochastic RSI, ADX, and Parabolic Sar have been added as indicators for the strategy.
You can choose from the 6 available indicators the way to trade, entry alert or entry filter.
Added the option of ATR for Take Profit.
Ticker information and timeframe are now displayed on the dashboard.
Added display customization and color customization of indicator plots.
Added customization of display and color plots of trades displayed on chart.
📝Changes:
Now when activating the time filter it is optional to add a start or end date and time, being able to only add a start date or only an end date.
Operation plots have been changed from plot() to line creation with line.new().
Indicator plots can now be controlled from the "plots" section.
Acceptable and deniable range of profit, winrate and profit factor can now be chosen from the "plots" section to be displayed on the dashboard.
Aesthetic changes in the section separations within the settings section and within the code itself.
The function that made the indicators give inputs based on heikin ashi candles has been changed, see the code for more information.
⚙️Fixes:
Dashboard label now projects correctly on all timeframes including custom timeframes.
Removed unnecessary lines and variables to take up less code space.
All code in general has been optimized to avoid the use of variables, unnecessary lines and avoid unnecessary calculations, freeing up space to declare more variables and be able to use fewer lines of code.
| Lanzamiento Inicial | | ES |
Una actualización de mi antiguo script, este script está diseñado para que pueda ser usado como una plantilla para todos aquellos traders que quieran ahorrar tiempo al programar su estrategia y hacer un backtesting de ella, teniendo funciones ya programadas que en el desarrollo normal te tomaría más tiempo programar, con esta plantilla puedes simplemente agregar tu indicador favorito y así poder aprovechar todas las funciones que tiene esta plantilla.
🔴Stop Loss y 🟢Take Profit:
No hace falta mencionar que es un Stop Loss y un Take Profit, dentro de estas funciones encontramos las opciones de: porcentaje fijo (%), precio fijo ($), ATR, en especial para Stop Loss encontramos los Pivot Points, adicionalmente a esto, el rango de precio entre la entrada y el Stop Loss se puede convertir en un trailing stop loss, en cambio, especialmente para el Take Profit tenemos una opción para elegir un ratio 1:X que se complementa muy bien con los Pivot Points.
📈Entradas Basadas en Heikin Ashi:
Las entradas Heikin Ashi son operaciones que son calculados en base a las velas Heikin Ashi pero su precio esta ejecutado a velas japonesas, evitando así́ los falsos resultados que se producen en graficas de velas Heikin, esto haciendo que en ciertos casos se obtengan mejores resultados en las estrategias que son ejecutadas con esta opción en comparación con las velas japonesas.
📊Panel de Control:
Una manera más visual y organizada de ver los resultados y datos necesarios producidos por nuestra estrategia, entre ellos podemos ver las fechas entre las que se hacen nuestras operaciones independientemente si se tiene activado algún filtro de tiempo, datos usuales como el Profit, Win Rate, Profit factor también son mostrados en este panel, adicionalmente se agregaron datos como el número total de operaciones, cuantos fueron ganancias y cuantos perdidas, el promedio de ganancias y pérdidas por cada operación y por ultimo las máximas ganancias y pérdidas seguidas, que son datos que nos serán muy útiles al elaborar nuestras estrategias.
Siéntete libre de usar esta plantilla para programar tus propias estrategias, si encuentras errores o quieres solicitar una nueva función házmelo saber en los comentarios o a través de mis redes sociales que se encuentran en mi perfil de tradingview.
| Actualización 1.1 | | ES |
➕Añadidos:
Filtro de sesiones de tiempo y filtro de días de la semana agregados al apartado de filtro de tiempo.
Opción para agregar apalancamiento a la estrategia.
5 Moving Averages, RSI, Stochastic RSI, ADX, y Parabolic Sar se han agregado como indicadores para la estrategia.
Puedes escoger entre los 6 indicadores disponibles la forma de operar, alerta de entrada o filtro de entrada.
Añadido la opción de ATR para Take Profit.
La información del ticker y la temporalidad ahora se muestran en el dashboard.
Añadido personalización de visualización y color de los plots de indicadores.
Añadido personalización de visualización y color de los plots de operaciones mostradas en grafica.
📝Cambios:
Ahora al activar el filtro de tiempo es opcional añadir una fecha y hora de inicio o fin, pudiendo únicamente agregar una fecha de inicio o solamente una fecha de fin.
Los plots de operaciones han cambiados de plot() a creación de líneas con line.new().
Los plots de indicadores ahora se pueden controlar desde el apartado "plots".
Ahora se puede elegir el rango aceptable y negable de profit, winrate y profit factor desde el apartado "plots" para mostrarse en el dashboard.
Cambios estéticos en las separaciones de secciones dentro del apartado de configuraciones y dentro del propio código.
Se ha cambiado la función que hacía que los indicadores dieran entradas en base a velas heikin ashi, mire el código para más información.
⚙️Arreglos:
El dashboard label ahora se proyecta correctamente en todas las temporalidades incluyendo las temporalidades personalizadas.
Se han eliminado líneas y variables innecesarias para ocupar menos espacio en el código.
Se ha optimizado todo el código en general para evitar el uso de variables, líneas innecesarias y evitar los cálculos innecesarios, liberando espacio para declarar más variables y poder utilizar menos líneas de código.
Joker Trailing TP BotTrailing Take Profit is used by the traders to increase their gains when the prices moves in a favorable direction. Let’s have a look at what is Trailing Take Profit and how it works.
What Is a Trailing Take Profit?
Trailing Take Profit is a term largely used in crypto, whereas you may encounter the term Trailing Stop in traditional trading describing almost the same thing, So what’s the difference between Trailing Take Profit and Trailing Stop? Trailing Stop is a type of Stop Loss automatically moving in the same direction as the asset’s price. Trailing Take Profit is nothing else than Trailing Stop activated after initial Take Profit is reached.
The main difference between these two is that Trailing Take Profit takes the profit in any case (altough it might be later annihilated by Trailing Stop). Thus, Trailing Take Profit reduces the risks that might’ve occurred using Trailing Stop alone. Trailing Take Profit is bound to the maximum of Take Profit price instead of just a price increase/decrease.
As you might notice, the terms Trailing Take Profit and Stop Loss are quite similar. To avoid confusion, in this article we will be talking about Trailing Take Profit as defined above.
Trailing Take Profit only moves in one direction. It is designed to lock in profit and limit losses. The trailing profit only moves up (in case of a long strategy) once the price has surpassed previous high and a new high has been established. If the trailing take profit moves up, it cannot move back down, thus securing the profit and preventing losses.
Trailing Take Profit allows the trade to remain open and continue to profit as long as the price is moving in the investor’s favor. If the price changes direction and the change surpasses the previously set percentage the order will be closed.
How Does it Work?
For example if you buy BTC at the price of 10000, if you set a Take Profit at 11000 and a Trailing Take Profit at 5% :
If the price goes up to 10500, nothing happens because the Take Profit at 11000 has not been reached.
Then if the BTC price goes up top 11000, a Stop Order at 10450 will be set.
Then if the BTC price goes down to 10500, the Stop Order stays at 104500.
Then if the BTC price goes up to 12000, the Stop Order moves to 11400.
Then if the BTC price goes down to 11000, the Stop Order at 11400 is executed.
You see that without Trailing Take Profit, the buy order would have been sold at 11000. Thus, a trader would miss an earning opportunity at 11400.
Cipher B divergencies for Crypto (Finandy support)Hello Traders!
In times of high volatility, it is important to follow a market-neutral strategy to protect your hard-earned assets. The simple script employs common buy/sell and/or divergencies signals from the VuManChu Cipher B indicator with fixed stop losses and takes profits. The signals are filtered by a local trend of a coin of interest and the global trend of Bitcoin. These trends-filtered signals demonstrated better performance on most of the back- and forward- tests for USDT cryptocurrency futures. The strategy is based on my real experience, it's a diamond I want to share with you.
In terms of visualization if the background is red and the price is below the yellow line then only a short position can be opened. Conversely, if the price is above the yellow line AND the background is green only a long position can be opened.
Inputs from VuManChu you can find on the top. Frankly, I do not know how they can help you to improve the performance of the strategy. My inputs of the script you can find in "Trend Settings" and "TP/SL Settings" at the bottom.
The checkbox "Only divergencies" lets to broadcast only more reliable buy/sell signals for a cost of rare deals.
The checkbox "Cancel all positions if price crosses local sma?" makes additional trailing stop loss. Usually, this function increases the win rate by "smoothing" the risk/reward ratio, as a usual stop loss does.
You can tune SL/TP based on backtesting.
To connect the script to Finandy just edit "name" and "secret" to connect your webhook (see the bottom of the script).
The rule of thumb for the strategy is "only divergencies" - ON, high reward/risk (TP/SL) ratio, 5 min timeframe on chart help with performance.
Finally, I am looking forward to feedback from you. If you have some cool features for my script in your mind, do not hesitate to leave them in the comments.
Good luck!
MACD + CMF + EMA + Supertrend by TradeSmartHello everyone and welcome to our first script release!
This script is one of many upcoming scripts. This one is a test for us, how it works, how you guys like this kind of stuff, and for feedback what we should change/improve at.
SCRIPT IS OPTIMIZED FOR:
EUR/USD 30 MINUTE TIMEFRAME
Video of the Strategy:
Search for “MACD + CMF + 200 EMA + Supertrend Trading Strategy Tested 100 Times with Great Results!” on our channel.
In this video you can find the exact strategy we programmed, just one added feature: Supertrend trailing stop loss. (position gets closed once the price hits the Supertrend indicator)
Now you can modify the following:
MACD settings
Supertrend settings
EMA settings
CMF settings
We will update the script with more and more features.
The first update will be:
Modifiable risk to reward ratio.
I will make a video of how to use this indicator next week, explaining all the features and more!
Hope you like it! Don't forget to let us know what we should change or improve. Thanks, and have a great day!
STRATEGY ENTRY RULES
LONG
When CMF is above 0 and price is under EMA. Also MACD has made a double cross above the zero line (meaning one cross down and one cross up by the MACD line). Then go long!
Note:
MACD or Signal must return under 0 in order to start a new position
If either of the MACD lines touches the 0 line before entry, we skip the trade and wait for the next signal.
SHORT
When CMF is under 0 and price is under EMA. Also MACD has made a double cross under the zero line (meaning one cross up and one cross down by the MACD line). Then go short!
Note:
MACD or Signal must return under 0 in order to start a new position.
If either of the MACD lines touches the 0 line before entry, we skip the trade and wait for the next signal.
TAKE PROFIT
When price hits the exit price (calculated from stop loss with the risk ratio), then exit with 50% of the position. The other 50% will stay open until the price hits the supertrend or the base stop loss.
STOP LOSS
When price hits stop loss then exit the position. Stop loss is calculated from the Supertrend and it is a trailing one, meaning it changes based on the movement of the price.
QUANTITY TO BUY
The quantity to buy is based on the Risk Per Trade % attribute. This means that we can set how much money we want to risk on one trade. Meaning that if we lose that particular position, then a Risk Per Trade % value of our equity will be lost.
Example: if you set the Risk Per Trade % to 1 % and you have a 100$ account balance, then if you loose the trade you will loose 1$ max.